mirror of
https://github.com/curl/curl.git
synced 2026-07-24 18:27:20 +03:00
Added support for running on Symbian OS.
This commit is contained in:
parent
ad1dd08693
commit
1960eebc2d
25 changed files with 1158 additions and 16 deletions
|
|
@ -3,5 +3,5 @@ SUBDIRS = Win32 Linux Solaris EPM DOS AIX vms
|
|||
EXTRA_DIST = README NetWare/get_ver.awk OS400/ccsidcurl.c OS400/ccsidcurl.h \
|
||||
OS400/curl.inc.in OS400/initscript.sh OS400/makefile.sh OS400/make-include.sh \
|
||||
OS400/make-lib.sh OS400/make-src.sh OS400/make-tests.sh OS400/os400sys.c \
|
||||
OS400/os400sys.h OS400/README.OS400
|
||||
OS400/os400sys.h OS400/README.OS400 Symbian
|
||||
|
||||
|
|
|
|||
58
packages/Symbian/bwins/libcurlu.def
Normal file
58
packages/Symbian/bwins/libcurlu.def
Normal file
|
|
@ -0,0 +1,58 @@
|
|||
EXPORTS
|
||||
curl_easy_cleanup @ 1 NONAME
|
||||
curl_easy_duphandle @ 2 NONAME
|
||||
curl_easy_escape @ 3 NONAME
|
||||
curl_easy_getinfo @ 4 NONAME
|
||||
curl_easy_init @ 5 NONAME
|
||||
curl_easy_pause @ 6 NONAME
|
||||
curl_easy_perform @ 7 NONAME
|
||||
curl_easy_reset @ 8 NONAME
|
||||
curl_easy_setopt @ 9 NONAME
|
||||
curl_easy_strerror @ 10 NONAME
|
||||
curl_easy_unescape @ 11 NONAME
|
||||
curl_escape @ 12 NONAME
|
||||
curl_formadd @ 13 NONAME
|
||||
curl_formfree @ 14 NONAME
|
||||
curl_formget @ 15 NONAME
|
||||
curl_free @ 16 NONAME
|
||||
curl_getdate @ 17 NONAME
|
||||
curl_getenv @ 18 NONAME
|
||||
curl_global_cleanup @ 19 NONAME
|
||||
curl_global_init @ 20 NONAME
|
||||
curl_global_init_mem @ 21 NONAME
|
||||
curl_maprintf @ 22 NONAME
|
||||
curl_mfprintf @ 23 NONAME
|
||||
curl_mprintf @ 24 NONAME
|
||||
curl_msnprintf @ 25 NONAME
|
||||
curl_msprintf @ 26 NONAME
|
||||
curl_multi_add_handle @ 27 NONAME
|
||||
curl_multi_assign @ 28 NONAME
|
||||
curl_multi_cleanup @ 29 NONAME
|
||||
curl_multi_fdset @ 30 NONAME
|
||||
curl_multi_info_read @ 31 NONAME
|
||||
curl_multi_init @ 32 NONAME
|
||||
curl_multi_perform @ 33 NONAME
|
||||
curl_multi_remove_handle @ 34 NONAME
|
||||
curl_multi_setopt @ 35 NONAME
|
||||
curl_multi_socket @ 36 NONAME
|
||||
curl_multi_socket_action @ 37 NONAME
|
||||
curl_multi_socket_all @ 38 NONAME
|
||||
curl_multi_strerror @ 39 NONAME
|
||||
curl_multi_timeout @ 40 NONAME
|
||||
curl_mvaprintf @ 41 NONAME
|
||||
curl_mvfprintf @ 42 NONAME
|
||||
curl_mvprintf @ 43 NONAME
|
||||
curl_mvsnprintf @ 44 NONAME
|
||||
curl_mvsprintf @ 45 NONAME
|
||||
curl_share_cleanup @ 46 NONAME
|
||||
curl_share_init @ 47 NONAME
|
||||
curl_share_setopt @ 48 NONAME
|
||||
curl_share_strerror @ 49 NONAME
|
||||
curl_slist_append @ 50 NONAME
|
||||
curl_slist_free_all @ 51 NONAME
|
||||
curl_strequal @ 52 NONAME
|
||||
curl_strnequal @ 53 NONAME
|
||||
curl_unescape @ 54 NONAME
|
||||
curl_version @ 55 NONAME
|
||||
curl_version_info @ 56 NONAME
|
||||
|
||||
58
packages/Symbian/eabi/libcurlu.def
Normal file
58
packages/Symbian/eabi/libcurlu.def
Normal file
|
|
@ -0,0 +1,58 @@
|
|||
EXPORTS
|
||||
curl_easy_cleanup @ 1 NONAME
|
||||
curl_easy_duphandle @ 2 NONAME
|
||||
curl_easy_escape @ 3 NONAME
|
||||
curl_easy_getinfo @ 4 NONAME
|
||||
curl_easy_init @ 5 NONAME
|
||||
curl_easy_pause @ 6 NONAME
|
||||
curl_easy_perform @ 7 NONAME
|
||||
curl_easy_reset @ 8 NONAME
|
||||
curl_easy_setopt @ 9 NONAME
|
||||
curl_easy_strerror @ 10 NONAME
|
||||
curl_easy_unescape @ 11 NONAME
|
||||
curl_escape @ 12 NONAME
|
||||
curl_formadd @ 13 NONAME
|
||||
curl_formfree @ 14 NONAME
|
||||
curl_formget @ 15 NONAME
|
||||
curl_free @ 16 NONAME
|
||||
curl_getdate @ 17 NONAME
|
||||
curl_getenv @ 18 NONAME
|
||||
curl_global_cleanup @ 19 NONAME
|
||||
curl_global_init @ 20 NONAME
|
||||
curl_global_init_mem @ 21 NONAME
|
||||
curl_maprintf @ 22 NONAME
|
||||
curl_mfprintf @ 23 NONAME
|
||||
curl_mprintf @ 24 NONAME
|
||||
curl_msnprintf @ 25 NONAME
|
||||
curl_msprintf @ 26 NONAME
|
||||
curl_multi_add_handle @ 27 NONAME
|
||||
curl_multi_assign @ 28 NONAME
|
||||
curl_multi_cleanup @ 29 NONAME
|
||||
curl_multi_fdset @ 30 NONAME
|
||||
curl_multi_info_read @ 31 NONAME
|
||||
curl_multi_init @ 32 NONAME
|
||||
curl_multi_perform @ 33 NONAME
|
||||
curl_multi_remove_handle @ 34 NONAME
|
||||
curl_multi_setopt @ 35 NONAME
|
||||
curl_multi_socket @ 36 NONAME
|
||||
curl_multi_socket_action @ 37 NONAME
|
||||
curl_multi_socket_all @ 38 NONAME
|
||||
curl_multi_strerror @ 39 NONAME
|
||||
curl_multi_timeout @ 40 NONAME
|
||||
curl_mvaprintf @ 41 NONAME
|
||||
curl_mvfprintf @ 42 NONAME
|
||||
curl_mvprintf @ 43 NONAME
|
||||
curl_mvsnprintf @ 44 NONAME
|
||||
curl_mvsprintf @ 45 NONAME
|
||||
curl_share_cleanup @ 46 NONAME
|
||||
curl_share_init @ 47 NONAME
|
||||
curl_share_setopt @ 48 NONAME
|
||||
curl_share_strerror @ 49 NONAME
|
||||
curl_slist_append @ 50 NONAME
|
||||
curl_slist_free_all @ 51 NONAME
|
||||
curl_strequal @ 52 NONAME
|
||||
curl_strnequal @ 53 NONAME
|
||||
curl_unescape @ 54 NONAME
|
||||
curl_version @ 55 NONAME
|
||||
curl_version_info @ 56 NONAME
|
||||
|
||||
7
packages/Symbian/group/bld.inf
Normal file
7
packages/Symbian/group/bld.inf
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
//
|
||||
// libcurl and curl bld.inf file for Symbian OS
|
||||
//
|
||||
|
||||
PRJ_MMPFILES
|
||||
libcurl.mmp
|
||||
curl.mmp
|
||||
13
packages/Symbian/group/curl.iby
Normal file
13
packages/Symbian/group/curl.iby
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
//
|
||||
// curl file transfer utility command-line utility
|
||||
//
|
||||
|
||||
#ifndef CURL_IBY
|
||||
#define CURL_IBY
|
||||
|
||||
#include <openenv.iby>
|
||||
#include <libcurl.iby>
|
||||
|
||||
file=ABI_DIR\BUILD_DIR\curl.exe System\Programs\curl.exe
|
||||
|
||||
#endif // CURL_IBY
|
||||
23
packages/Symbian/group/curl.mmp
Normal file
23
packages/Symbian/group/curl.mmp
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
//
|
||||
// cURL network retrieval client
|
||||
//
|
||||
|
||||
TARGET curl.exe
|
||||
TARGETTYPE exe
|
||||
UID 0x00000000 0x10206442
|
||||
|
||||
SOURCEPATH ..\..\..\src
|
||||
SOURCE \
|
||||
main.c hugehelp.c urlglob.c writeout.c writeenv.c \
|
||||
getpass.c homedir.c curlutil.c
|
||||
|
||||
SYSTEMINCLUDE ..\..\..\include ..\..\..\lib ..\..\..\include\curl \
|
||||
\epoc32\include \epoc32\include\stdapis
|
||||
|
||||
LIBRARY euser.lib libc.lib libcurl.lib
|
||||
STATICLIBRARY libcrt0.lib
|
||||
|
||||
CAPABILITY ALL -Tcb
|
||||
|
||||
EPOCSTACKSIZE 0x18000
|
||||
|
||||
12
packages/Symbian/group/libcurl.iby
Normal file
12
packages/Symbian/group/libcurl.iby
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
//
|
||||
// libcurl file transfer DLL
|
||||
//
|
||||
|
||||
#ifndef LIBCURL_IBY
|
||||
#define LIBCURL_IBY
|
||||
|
||||
#include <openenv.iby>
|
||||
|
||||
file=ABI_DIR\BUILD_DIR\libcurl.dll System\Libs\libcurl.dll
|
||||
|
||||
#endif
|
||||
32
packages/Symbian/group/libcurl.mmp
Normal file
32
packages/Symbian/group/libcurl.mmp
Normal file
|
|
@ -0,0 +1,32 @@
|
|||
//
|
||||
// libcurl.dll cURL network retrieval client library
|
||||
//
|
||||
|
||||
TARGET libcurl.dll
|
||||
TARGETTYPE dll
|
||||
UID 0x1000008d 0x10206D00
|
||||
|
||||
MACRO BUILDING_LIBCURL=1
|
||||
|
||||
SOURCEPATH ..\..\..\lib
|
||||
SOURCE \
|
||||
file.c timeval.c base64.c hostip.c progress.c formdata.c \
|
||||
cookie.c http.c sendf.c ftp.c url.c dict.c if2ip.c speedcheck.c \
|
||||
ldap.c ssluse.c version.c getenv.c escape.c mprintf.c telnet.c \
|
||||
netrc.c getinfo.c transfer.c strequal.c easy.c security.c krb4.c \
|
||||
krb5.c memdebug.c http_chunks.c strtok.c connect.c llist.c hash.c \
|
||||
multi.c content_encoding.c share.c http_digest.c md5.c \
|
||||
http_negotiate.c http_ntlm.c inet_pton.c strtoofft.c strerror.c \
|
||||
hostares.c hostasyn.c hostip4.c hostip6.c hostsyn.c hostthre.c \
|
||||
inet_ntop.c parsedate.c select.c gtls.c sslgen.c tftp.c splay.c \
|
||||
strdup.c socks.c ssh.c nss.c qssl.c
|
||||
|
||||
USERINCLUDE ..\..\..\lib
|
||||
|
||||
SYSTEMINCLUDE ..\..\..\include ..\..\..\include\curl \
|
||||
\epoc32\include\stdapis \epoc32\include
|
||||
|
||||
LIBRARY euser.lib libc.lib
|
||||
CAPABILITY ALL -Tcb
|
||||
|
||||
EPOCALLOWDLLDATA
|
||||
71
packages/Symbian/readme.txt
Normal file
71
packages/Symbian/readme.txt
Normal file
|
|
@ -0,0 +1,71 @@
|
|||
Curl on Symbian OS
|
||||
==================
|
||||
This is a basic port of curl and libcurl to Symbian OS. The port is
|
||||
a straightforward one using Symbian's P.I.P.S. POSIX compatibility
|
||||
layer. A more complete port would involve writing a Symbian C++ binding,
|
||||
or wrapping libcurl as a Symbian application server with a C++ API to
|
||||
handle requests from client applications and creating a GUI application
|
||||
to allow file transfers. The author has no current plans to do so.
|
||||
|
||||
This means that integration with standard Symbian OS programs can be
|
||||
tricky, since libcurl isn't designed with Symbian's native asynchronous
|
||||
message passing idioms in mind. However, it may be possible to use libcurl
|
||||
in an active object-based application through libcurl's multi interface.
|
||||
The port is most easily used when porting POSIX applications to Symbian
|
||||
OS using P.I.P.S.
|
||||
|
||||
libcurl is built as a standard Symbian ordinal-linked DLL, and curl is
|
||||
built as a text mode EXE application. They have not been Symbian
|
||||
Signed, which is required in order to install them on most phones.
|
||||
|
||||
Following are some things to keep in mind when using this port.
|
||||
|
||||
curl notes
|
||||
----------
|
||||
When starting curl in the Windows emulator from the Windows command-line,
|
||||
place a double-dash -- before the first curl command-line option.
|
||||
e.g. \epoc32\release\winscw\udeb\curl -- -v http://localhost/
|
||||
Failure to do so may mean that some of your options won't be correctly
|
||||
processed.
|
||||
|
||||
Symbian OS does not provide for redirecting the standard I/O streams, so
|
||||
stdin always comes from the keyboard and stdout always goes to the
|
||||
console; stderr is thrown away. The standard curl options -o, --stderr
|
||||
and --trace-ascii can be used to redirect output to a file (or stdout)
|
||||
instead.
|
||||
|
||||
P.I.P.S. doesn't inherit the current working directory at startup, so you
|
||||
may need to use the -o option to specify a specific location to store a
|
||||
downloaded file.
|
||||
|
||||
P.I.P.S. provides no way to disable echoing of characters as they are
|
||||
entered, so passwords typed in on the console will be visible.
|
||||
|
||||
All screen output disappears after curl exits, so after a transfer completes,
|
||||
curl waits by default for Enter to pressed before exiting. This behaviour
|
||||
is suppressed when the -s option is given.
|
||||
|
||||
The "home directory" in Symbian is C:\Private\10206442\. The .curlrc is read
|
||||
from this directory on startup.
|
||||
|
||||
libcurl notes
|
||||
-------------
|
||||
libcurl uses writeable static data, so the EPOCALLOWDLLDATA option is
|
||||
used in its MMP file, with the corresponding additional memory usage
|
||||
and limitations on the Windows emulator.
|
||||
|
||||
curl_global_init() *must* be called before any libcurl functions that could
|
||||
allocate memory (like curl_getenv()).
|
||||
|
||||
P.I.P.S. doesn't support signals or the alarm() call, so some timeouts
|
||||
(such as the connect timeout) are not honoured.
|
||||
|
||||
P.I.P.S. causes a USER:87 panic if a timeout much longer than half an hour
|
||||
is selected.
|
||||
|
||||
SSL/TLS encryption is not supported.
|
||||
|
||||
|
||||
Dan Fandrich
|
||||
dan@coneharvesters.com
|
||||
April 2008
|
||||
Loading…
Add table
Add a link
Reference in a new issue