mirror of
https://github.com/moparisthebest/curl
synced 2024-12-21 23:58:49 -05:00
MacOS (not Mac OS X) compilation files
This commit is contained in:
parent
aa21a3d5c3
commit
3ff2bfa0e4
1
src/macos/MACINSTALL.TXT
Normal file
1
src/macos/MACINSTALL.TXT
Normal file
@ -0,0 +1 @@
|
||||
MACOS (not MACOS X)
===================
This is the first attempt at porting cURL to MacOS.
http, ftp, dict and telnet seems to work fine, other protocols and advanced
features have not been all tested.
This port is heavily based on the GUSI library from Matthias Neeracher.
GUSI (Grand Unified Socket Interface) is a POSIX/Pthreads/Sockets library
bringing some of the comforts of UNIX 98 to traditional MacOS.
The latest GUSI release can be downloaded from sourceforge
at <http://sourceforge.net/projects/gusi/>
I have also write a few functions to help port UNIX applications to MacOS.
These functions are part of the GUSI Extra library that can be downloaded at
<http://perso.wanadoo.fr/ela/resources.html#gusiextra>
OpenSSL support is still experimental but I hope to deliver a version
including SSL soon.
cURL for MacOS requires using the CodeWarrior compiler from Metrowerks.
First download GUSI, GUSI Extra and cURL. Access paths have been setup so that
GUSI, GUSI Extra and cURL directories should have the same parent directory.
Follow the instructions in GUSI Extra "readme.txt" mainly the ones related to
SIOUX and GUSI patches. If you do not apply these patches curl will not behave
correctly.
In the 'curl/src/macos' directory, decode "curl.mcp.xml.sit.hqx" (This is a
stuffit binhexed file)
From the CodeWarrior IDE, import 'curl/src/macos/curl.xml', adjust the access
paths if required. Then you should be able to build:
- the libcurl libraries for PPC and 68K.
- the curl application (also available for PPC and 68K) which is the command
line version of cURL.
If the file "hugehelp.c" is missing rename "curl/src/hugehelp.c.cvs" to
"hugehelp.c" and make sure its file type is 'TEXT'
|
1
src/macos/curl.mcp.xml.sit.hqx
Normal file
1
src/macos/curl.mcp.xml.sit.hqx
Normal file
File diff suppressed because one or more lines are too long
1
src/macos/src/curl_GUSIConfig.cpp
Normal file
1
src/macos/src/curl_GUSIConfig.cpp
Normal file
@ -0,0 +1 @@
|
||||
/**************** BEGIN GUSI CONFIGURATION ****************************
*
* GUSI Configuration section generated by GUSI Configurator
* last modified: Mon Oct 29 15:41:51 2001
*
* This section will be overwritten by the next run of Configurator.
*/
#define GUSI_SOURCE
#include <GUSIConfig.h>
#include <sys/cdefs.h>
/* Declarations of Socket Factories */
__BEGIN_DECLS
void GUSIwithInetSockets();
void GUSIwithLocalSockets();
void GUSIwithMTInetSockets();
void GUSIwithMTTcpSockets();
void GUSIwithMTUdpSockets();
void GUSIwithOTInetSockets();
void GUSIwithOTTcpSockets();
void GUSIwithOTUdpSockets();
void GUSIwithPPCSockets();
void GUSISetupFactories();
__END_DECLS
/* Configure Socket Factories */
void GUSISetupFactories()
{
#ifdef GUSISetupFactories_BeginHook
GUSISetupFactories_BeginHook
#endif
GUSIwithInetSockets();
#ifdef GUSISetupFactories_EndHook
GUSISetupFactories_EndHook
#endif
}
/* Declarations of File Devices */
__BEGIN_DECLS
void GUSIwithNullSockets();
void GUSISetupDevices();
__END_DECLS
/* Configure File Devices */
void GUSISetupDevices()
{
#ifdef GUSISetupDevices_BeginHook
GUSISetupDevices_BeginHook
#endif
GUSIwithNullSockets();
#ifdef GUSISetupDevices_EndHook
GUSISetupDevices_EndHook
#endif
}
#ifndef __cplusplus
#error GUSISetupConfig() needs to be written in C++
#endif
GUSIConfiguration::FileSuffix sSuffices[] = {
"", '????', '????'
};
extern "C" void GUSISetupConfig()
{
GUSIConfiguration * config =
GUSIConfiguration::CreateInstance(GUSIConfiguration::kNoResource);
config->ConfigureDefaultTypeCreator('TEXT', 'CWIE');
config->ConfigureSuffices(
sizeof(sSuffices)/sizeof(GUSIConfiguration::FileSuffix)-1, sSuffices);
}
/**************** END GUSI CONFIGURATION *************************/
|
1
src/macos/src/macos_main.cpp
Normal file
1
src/macos/src/macos_main.cpp
Normal file
@ -0,0 +1 @@
|
||||
/* =========================================================================
Copyright (C) 2001 Eric Lavigne
Permission is granted to anyone to use this software for any purpose on any
computer system, and to redistribute it freely, subject to the following
restrictions:
- The author is not responsible for the consequences of use of this
software, no matter how awful, even if they arise from defects in it.
- The origin of this software must not be misrepresented, either by
explicit claim or by omission.
- You are allowed to distributed modified copies of the software, in source
and binary form, provided they are marked plainly as altered versions, and
are not misrepresented as being the original software.
========================================================================= */
#include <stdlib.h>
#include <string.h>
#include <stdio.h>
#include <Memory.h>
#include <GUSICommandLine.h>
#include <stdlib.h>
/* ========================================================================= */
DECLARE_MAIN(curl)
REGISTER_MAIN_START
REGISTER_MAIN(curl)
REGISTER_MAIN_END
/* ========================================================================= */
int main()
{
::MaxApplZone();
for (int i = 1; i <= 10; i++)
::MoreMasters();
(void) exec_commands();
return 0;
}
|
Loading…
Reference in New Issue
Block a user