Browse Source

* external fixes

peter 21 years ago
parent
commit
2633b4883f

+ 8 - 41
packages/base/mysql/mysql3.pp

@@ -213,46 +213,6 @@ Function mysql_error(mysql : PMYSQL) : pchar;
 
 { Original functions }
 
-Function mysql_connect (mysql : PMYSQL; host,user,passwd: pchar) : PMYSQL; {$ifdef win32}stdcall{$else}cdecl{$endif};
-Function mysql_real_connect (mysql : PMYSQL; const host,user,passwd : pchar;
-                                   port : cardinal;
-                                   unix_socket : pchar;
-                                   clientflag : cardinal) : PMYSQL;{$ifdef win32}stdcall{$else}cdecl{$endif};
-
-Function mysql_close(sock : PMYSQL) : longint; {$ifdef win32}stdcall{$else}cdecl{$endif};
-Function mysql_select_db(MYSQL : PMYSQL; db : Pchar) : longint; {$ifdef win32}stdcall{$else}cdecl{$endif};
-Function mysql_query(mysql : PMYSQL; q : pchar) : longint; {$ifdef win32}stdcall{$else}cdecl{$endif};
-Function mysql_real_query(mysql : PMYSQL; q : Pchar; length : longint) : longint; {$ifdef win32}stdcall{$else}cdecl{$endif};
-Function mysql_create_db(mysql : PMYSQL; db : pchar) : longint; {$ifdef win32}stdcall{$else}cdecl{$endif};
-Function mysql_drop_db(mysql : PMYSQL; DB : Pchar) : longint; {$ifdef win32}stdcall{$else}cdecl{$endif};
-Function mysql_shutdown(mysql : PMYSQL) : longint; {$ifdef win32}stdcall{$else}cdecl{$endif};
-Function mysql_dump_debug_info(mysql : PMYSQL) : longint; {$ifdef win32}stdcall{$else}cdecl{$endif};
-Function mysql_refresh(mysql : PMYSQL; refresh_options : cardinal) : longint; {$ifdef win32}stdcall{$else}cdecl{$endif};
-Function mysql_kill(mysql : PMYSQL; pid : Cardinal) : longint; {$ifdef win32}stdcall{$else}cdecl{$endif};
-Function mysql_stat(mysql : PMYSQL) : Pchar; {$ifdef win32}stdcall{$else}cdecl{$endif};
-Function mysql_get_server_info(mysql : PMYSQL) : pchar; {$ifdef win32}stdcall{$else}cdecl{$endif};
-Function mysql_get_client_info : pchar; {$ifdef win32}stdcall{$else}cdecl{$endif};
-Function mysql_get_host_info(mysql : PMYSQL) : pchar; {$ifdef win32}stdcall{$else}cdecl{$endif};
-Function mysql_get_proto_info(mysql : PMYSQL) : Cardinal; {$ifdef win32}stdcall{$else}cdecl{$endif};
-Function mysql_list_dbs(mysql : PMYSQL;wild : Pchar) : PMYSQL_RES; {$ifdef win32}stdcall{$else}cdecl{$endif};
-Function  mysql_list_tables(mysql : PMYSQL;Wild : Pchar) : PMYSQL_RES; {$ifdef win32}stdcall{$else}cdecl{$endif};
-Function  mysql_list_fields(mysql : PMYSQL; table,wild : pchar) : PMYSQL_RES; {$ifdef win32}stdcall{$else}cdecl{$endif};
-Function  mysql_list_processes(mysql : PMYSQL) : PMYSQL_RES; {$ifdef win32}stdcall{$else}cdecl{$endif};
-Function  mysql_store_result(mysql : PMYSQL) : PMYSQL_RES; {$ifdef win32}stdcall{$else}cdecl{$endif};
-Function  mysql_use_result(mysql : PMYSQL) : PMYSQL_RES; {$ifdef win32}stdcall{$else}cdecl{$endif};
-Procedure mysql_free_result(res : PMYSQL_RES);{$ifdef win32}stdcall{$else}cdecl{$endif};
-Procedure mysql_data_seek(mysql : PMYSQL_RES; offs : cardinal);{$ifdef win32}stdcall{$else}cdecl{$endif};
-Function mysql_row_seek(mysql : PMYSQL_RES; Offs: TMYSQL_ROW_OFFSET): TMYSQL_ROW_OFFSET; {$ifdef win32}stdcall{$else}cdecl{$endif};
-Function mysql_field_seek(musql : PMYSQL_RES;offs : TMYSQL_FIELD_OFFSET): TMYSQL_FIELD_OFFSET; {$ifdef win32}stdcall{$else}cdecl{$endif};
-Function mysql_fetch_row(mysql : PMYSQL_RES) : TMYSQL_ROW; {$ifdef win32}stdcall{$else}cdecl{$endif};
-Function mysql_fetch_lengths(mysql : PMYSQL_RES) : PCardinal; {$ifdef win32}stdcall{$else}cdecl{$endif};
-Function mysql_fetch_field(handle : PMYSQL_RES) : PMYSQL_FIELD; {$ifdef win32}stdcall{$else}cdecl{$endif};
-Function mysql_escape_string(escto,escfrom : pchar; length : Cardinal) : cardinal; {$ifdef win32}stdcall{$else}cdecl{$endif};
-Procedure mysql_debug(debug : pchar);{$ifdef win32}stdcall{$else}cdecl{$endif};
-
-implementation
-
-
 function mysql_connect (mysql : PMYSQL; host,user,passwd: pchar) : PMYSQL;{$ifdef win32}stdcall{$else}cdecl{$endif}; external mysqllib name 'mysql_connect';
 function mysql_real_connect (mysql : PMYSQL; const host,user,passwd : pchar;
                                    port : cardinal;
@@ -290,6 +250,10 @@ function mysql_fetch_field(handle : PMYSQL_RES) : PMYSQL_FIELD;{$ifdef win32}std
 Function mysql_escape_string(escto,escfrom : pchar; length : Cardinal) : cardinal;{$ifdef win32}stdcall{$else}cdecl{$endif}; external mysqllib name 'mysql_escape_string';
 Procedure mysql_debug(debug : pchar);{$ifdef win32}stdcall{$else}cdecl{$endif}; external mysqllib name 'mysql_debug';
 
+implementation
+
+
+
 Function  mysql_error(mysql : PMYSQL) : pchar;
 
 begin
@@ -378,7 +342,10 @@ end.
 
 {
   $Log$
-  Revision 1.2  2004-11-02 23:33:32  florian
+  Revision 1.3  2004-11-21 16:33:55  peter
+    * external fixes
+
+  Revision 1.2  2004/11/02 23:33:32  florian
     * 64 bit fixes
 
   Revision 1.1  2004/09/30 19:34:47  michael

+ 11 - 30
packages/base/mysql/mysql3_com.pp

@@ -194,13 +194,6 @@ Const
 FIELD_TYPE_CHAR = FIELD_TYPE_TINY;              { For compability }
 FIELD_TYPE_INTERVAL = FIELD_TYPE_ENUM;          { For compability }
 
-Procedure sql_free (root : PMEM_ROOT);stdcall;
-Procedure init_alloc_root (root: PMEM_ROOT;block_size : Cardinal);stdcall;
-Function sql_alloc_first_block(root : PMEM_ROOT) : my_bool;stdcall;
-Function sql_alloc_root(mem_root : PMEM_ROOT;len : Cardinal) : longint;stdcall;
-Function sql_strdup_root(root : PMEM_ROOT;st : pchar) : pchar;stdcall;
-Function sql_memdup_root(root: PMEM_ROOT;st : pchar; len : Cardinal): longint;stdcall;
-
 {
 extern unsigned long max_allowed_packet;
 extern unsigned long net_buffer_length;
@@ -210,14 +203,6 @@ extern unsigned long net_buffer_length;
 #define net_new_transaction(net) ((net)->pkt_nr=0)
 }
 
-Function  my_net_init(net :PNET; fd : Socket) : Longint;stdcall;
-procedure net_end(net : PNET);stdcall;
-Procedure net_clear(net : PNET);stdcall;
-Function  net_flush(net : PNET) : longint;stdcall;
-Function  my_net_write(net : PNET;packet : pbyte;len : cardinal) : longint;stdcall;
-Function  net_write_command(net : PNET; command : char;packet : pbyte;len : cardinal) : longint;stdcall;
-Function  net_real_write(net : PNET;packet : pbyte; len : Cardinal) : longint;stdcall;
-Function  my_net_read(net : PNET) : Cardinal;stdcall;
 
 Type
 TRand_struct  = record
@@ -252,20 +237,6 @@ PUDF_INIT = TUDF_INIT;
 
   { Prototypes to password functions }
 
-procedure randominit(rand : Prand_struct; seed1,seed2 : Cardinal);stdcall;
-Function  rnd(rand : Prand_struct) : double;stdcall;
-procedure make_scrambled_password(toarg, passwd : Pchar);stdcall;
-procedure get_salt_from_password(res : pcardinal; password : pchar);stdcall;
-procedure scramble(toarg,message,password : pchar; old_ver : my_bool);stdcall;
-function  check_scramble(scramble,message : pchar; salt : cardinal;old_ver:my_bool) : my_bool;stdcall;
-function  get_tty_password(opt_message:  pchar) : pchar;stdcall;
-
-{
-#define NULL_LENGTH ((unsigned long) ~0) { For net_store_length }
-}
-
-implementation
-
 Procedure sql_free (root : PMEM_ROOT);stdcall;external;
 Procedure init_alloc_root (root: PMEM_ROOT;block_size : Cardinal);stdcall;external;
 Function sql_alloc_first_block(root : PMEM_ROOT) : my_bool;stdcall;external;
@@ -288,9 +259,19 @@ procedure scramble(toarg,message,password : pchar; old_ver : my_bool);stdcall;ex
 function  check_scramble(scramble,message : pchar; salt : cardinal;old_ver:my_bool) : my_bool;stdcall;external;
 function  get_tty_password(opt_message:  pchar) : pchar;stdcall;external;
 
+(*
+#define NULL_LENGTH ((unsigned long) ~0) { For net_store_length }
+*)
+
+implementation
+
+
 end.
   $Log$
-  Revision 1.2  2004-11-02 23:33:32  florian
+  Revision 1.3  2004-11-21 16:33:55  peter
+    * external fixes
+
+  Revision 1.2  2004/11/02 23:33:32  florian
     * 64 bit fixes
 
   Revision 1.1  2004/09/30 19:34:47  michael

+ 92 - 607
packages/base/oracle/oraoci.pp

@@ -788,75 +788,66 @@ type
   OCIParam              = pointer;
 
 
-  function OCIErrorGet(
-          hndlp:pointer;
-          recordno:cardinal;
-          sqlstate:PChar;
-          var errcodep:plongint;
-          bufp:PChar;
-          bufsiz:cardinal;
-          AType:cardinal):sword;cdecl;
-
   function OCIInitialize(
           mode:cardinal;
           ctxp:pointer;
           malocfp:pointer;
           ralocfp:pointer;
-          mfreefp:pointer):sword;cdecl;
+          mfreefp:pointer):sword;cdecl;external;
 
   function OCIHandleAlloc(
           parenth:pointer;
           var hndlpp:pointer;
           AType:cardinal;
           xtramem_sz:cardinal;
-          usrmempp:pointer):sword;cdecl;
+          usrmempp:pointer):sword;cdecl;external;
 
   function OCIHandleFree(
           hndlp:pointer;
-          AType:cardinal):sword;cdecl;
+          AType:cardinal):sword;cdecl;external;
 
   function OCIEnvInit(
           var envp: OCIEnv;
 
           mode: ub4;
           xtramemsz: Integer;
-          usrmempp: pointer): sword; cdecl;
+          usrmempp: pointer): sword; cdecl;external;
 
   function OCIDescriptorAlloc(
           parenth:pointer;
           descpp:pointer;
           AType:cardinal;
           xtramem_sz:cardinal;
-          usrmempp:pointer):sword;cdecl;
+          usrmempp:pointer):sword;cdecl;external;
 
   function OCIDescriptorFree(
           descp:pointer;
-          AType:cardinal):sword;cdecl;
+          AType:cardinal):sword;cdecl;external;
 
   function OCIServerAttach(
           srvhp:OCIServer;
           errhp:OCIError;
           dblink:PChar;
           dblink_len:longint;
-          mode:cardinal):sword;cdecl;
+          mode:cardinal):sword;cdecl;external;
 
   function OCIServerDetach(
           srvhp:OCIServer;
           errhp:OCIError;
-          mode:cardinal):sword;cdecl;
+          mode:cardinal):sword;cdecl;external;
 
   function OCISessionBegin(
           svchp:OCISvcCtx;
           errhp:OCIError;
           usrhp:OCISession;
           credt:cardinal;
-          mode:cardinal):sword;cdecl;
+          mode:cardinal):sword;cdecl;external;
 
   function OCISessionEnd(
           svchp:OCISvcCtx;
           errhp:OCIError;
           usrhp:OCISession;
-          mode:cardinal):sword;cdecl;
+          mode:cardinal):sword;cdecl;external;
 
   function OCILogon(
           envhp:OCIEnv;
@@ -867,13 +858,20 @@ type
           password:PChar;
           passwd_len:cardinal;
           dbname:PChar;
-          dbname_len:cardinal):sword;cdecl;
+          dbname_len:cardinal):sword;cdecl;external;
 
   function OCILogoff(
           svchp:OCISvcCtx;
-          errhp:OCIError):sword;cdecl;
+          errhp:OCIError):sword;cdecl;external;
 
-  {----------------------------------------------------------------------------}
+  function OCIErrorGet(
+          hndlp:pointer;
+          recordno:cardinal;
+          sqlstate:PChar;
+          var errcodep:PLongint;
+          bufp:PChar;
+          bufsiz:cardinal;
+          AType:cardinal):sword;cdecl;external;
 
   function OCIPasswordChange(
           svchp:OCISvcCtx;
@@ -884,7 +882,7 @@ type
           opasswd_len:cardinal;
           npasswd:PChar;
           npasswd_len:cardinal;
-          mode:cardinal):sword;cdecl;
+          mode:cardinal):sword;cdecl;external;
 
   function OCIStmtPrepare(
           stmtp:OCIStmt;
@@ -892,7 +890,7 @@ type
           stmt:PChar;
           stmt_len:cardinal;
           language:cardinal;
-          mode:cardinal):sword;cdecl;
+          mode:cardinal):sword;cdecl;external;
 
   function OCIBindByPos(
           stmtp:OCIStmt;
@@ -906,7 +904,7 @@ type
           alenp:pword; rcodep:pword;
           maxarr_len:cardinal;
           curelep:pcardinal;
-          mode:cardinal):sword;cdecl;
+          mode:cardinal):sword;cdecl;external;
 
   function OCIBindByName(
           stmtp:OCIStmt;
@@ -922,7 +920,7 @@ type
           rcodep:pword;
           maxarr_len:cardinal;
           curelep:pcardinal;
-          mode:cardinal):sword;cdecl;
+          mode:cardinal):sword;cdecl;external;
 
   function OCIBindObject(
           bindp:OCIBind;
@@ -931,7 +929,7 @@ type
           pgvpp:pointer;
           pvszsp:pcardinal;
           indpp:pointer;
-          indszp:pcardinal):sword;cdecl;
+          indszp:pcardinal):sword;cdecl;external;
 
   function OCIBindDynamic(
           bindp:OCIBind;
@@ -939,7 +937,7 @@ type
           ictxp:pointer;
           icbfp:OCICallbackInBind;
           octxp:pointer;
-          ocbfp:OCICallbackOutBind):sword;cdecl;
+          ocbfp:OCICallbackOutBind):sword;cdecl;external;
 
   function OCIBindArrayOfStruct(
           bindp:OCIBind;
@@ -947,7 +945,7 @@ type
           pvskip:cardinal;
           indskip:cardinal;
           alskip:cardinal;
-          rcskip:cardinal):sword;cdecl;
+          rcskip:cardinal):sword;cdecl;external;
 
   function OCIStmtGetPieceInfo(
           stmtp:OCIStmt;
@@ -957,7 +955,7 @@ type
           in_outp:pbyte;
           iterp:pcardinal;
           idxp:pcardinal;
-          piecep:pbyte):sword;cdecl;
+          piecep:pbyte):sword;cdecl;external;
 
   function OCIStmtSetPieceInfo(
           hndlp:pointer;
@@ -967,7 +965,7 @@ type
           alenp:pcardinal;
           piece:byte;
           indp:pointer;
-          rcodep:pword):sword;cdecl;
+          rcodep:pword):sword;cdecl;external;
 
   function OCIStmtExecute(
           svchp:OCISvcCtx;
@@ -977,7 +975,7 @@ type
           rowoff:cardinal;
           snap_in:OCISnapshot;
           snap_out:OCISnapshot;
-          mode:cardinal):sword;cdecl;
+          mode:cardinal):sword;cdecl;external;
 
   function OCIDefineByPos(
           stmtp:OCIStmt;
@@ -990,7 +988,7 @@ type
           indp:pointer;
           rlenp:pword;
           rcodep:pword;
-          mode:cardinal):sword;cdecl;
+          mode:cardinal):sword;cdecl;external;
 
   function OCIDefineObject(
           defnp:OCIDefine;
@@ -999,13 +997,13 @@ type
           pgvpp:pointer;
           pvszsp:pcardinal;
           indpp:pointer;
-          indszp:pcardinal):sword;cdecl;
+          indszp:pcardinal):sword;cdecl;external;
 
   function OCIDefineDynamic(
           defnp:OCIDefine;
           errhp:OCIError;
           octxp:pointer;
-          ocbfp:OCICallbackDefine):sword;cdecl;
+          ocbfp:OCICallbackDefine):sword;cdecl;external;
 
   function OCIDefineArrayOfStruct(
           defnp:OCIDefine;
@@ -1013,14 +1011,14 @@ type
           pvskip:cardinal;
           indskip:cardinal;
           rlskip:cardinal;
-          rcskip:cardinal):sword;cdecl;
+          rcskip:cardinal):sword;cdecl;external;
 
   function OCIStmtFetch(
           stmtp:OCIStmt;
           errhp:OCIError;
           nrows:cardinal;
           orientation:word;
-          mode:cardinal):sword;cdecl;
+          mode:cardinal):sword;cdecl;external;
 
   function OCIStmtGetBindInfo(
           stmtp:OCIStmt;
@@ -1033,7 +1031,7 @@ type
           invp:PChar;
           inpl:byte;
           dupl:byte;
-          hndl:OCIBind):sword;cdecl;
+          hndl:OCIBind):sword;cdecl;external;
 
   function OCIDescribeAny(
           svchp:OCISvcCtx;
@@ -1043,14 +1041,14 @@ type
           objptr_typ:byte;
           info_level:byte;
           objtyp:byte;
-          dschp:OCIDescribe):sword;cdecl;
+          dschp:OCIDescribe):sword;cdecl;external;
 
   function OCIParamGet(
           hndlp:pointer;
           htype:cardinal;
           errhp:OCIError;
           parmdpp:pointer;
-          pos:cardinal):sword;cdecl;
+          pos:cardinal):sword;cdecl;external;
 
   function OCIParamSet(
           hdlp:pointer;
@@ -1058,62 +1056,62 @@ type
           errhp:OCIError;
           dscp:pointer;
           dtyp:cardinal;
-          pos:cardinal):sword;cdecl;
+          pos:cardinal):sword;cdecl;external;
 
   function OCITransStart(
           svchp:OCISvcCtx;
           errhp:OCIError;
           timeout:uword;
-          flags:cardinal):sword;cdecl;
+          flags:cardinal):sword;cdecl;external;
 
   function OCITransDetach(
           svchp:OCISvcCtx;
           errhp:OCIError;
-          flags:cardinal):sword;cdecl;
+          flags:cardinal):sword;cdecl;external;
 
   function OCITransCommit(
           svchp:OCISvcCtx;
           errhp:OCIError;
-          flags:cardinal):sword;cdecl;
+          flags:cardinal):sword;cdecl;external;
 
   function OCITransRollback(
           svchp:OCISvcCtx;
           errhp:OCIError;
-          flags:cardinal):sword;cdecl;
+          flags:cardinal):sword;cdecl;external;
 
   function OCITransPrepare(
           svchp:OCISvcCtx;
           errhp:OCIError;
-          flags:cardinal):sword;cdecl;
+          flags:cardinal):sword;cdecl;external;
 
   function OCITransForget(
           svchp:OCISvcCtx;
           errhp:OCIError;
-          flags:cardinal):sword;cdecl;
+          flags:cardinal):sword;cdecl;external;
 
   function OCILobAppend(
           svchp:OCISvcCtx;
           errhp:OCIError;
           dst_locp:OCILobLocator;
-          src_locp:OCILobLocator):sword;cdecl;
+          src_locp:OCILobLocator):sword;cdecl;external;
 
   function OCILobAssign(
           envhp:OCIEnv;
           errhp:OCIError;
           src_locp:OCILobLocator;
-          dst_locpp:OCILobLocator):sword;cdecl;
+          dst_locpp:OCILobLocator):sword;cdecl;external;
 
   function OCILobCharSetForm(
           envhp:OCIEnv;
           errhp:OCIError;
           locp:OCILobLocator;
-          csfrm:pbyte):sword;cdecl;
+          csfrm:pbyte):sword;cdecl;external;
 
   function OCILobCharSetId(
           envhp:OCIEnv;
           errhp:OCIError;
           locp:OCILobLocator;
-          csid:pword):sword;cdecl;
+          csid:pword):sword;cdecl;external;
 
   function OCILobCopy(
           svchp:OCISvcCtx;
@@ -1122,39 +1120,39 @@ type
           src_locp:OCILobLocator;
           amount:cardinal;
           dst_offset:cardinal;
-          src_offset:cardinal):sword;cdecl;
+          src_offset:cardinal):sword;cdecl;external;
 
   function OCILobDisableBuffering(
           svchp:OCISvcCtx;
           errhp:OCIError;
-          locp:OCILobLocator):sword;cdecl;
+          locp:OCILobLocator):sword;cdecl;external;
 
   function OCILobEnableBuffering(
           svchp:OCISvcCtx;
           errhp:OCIError;
-          locp:OCILobLocator):sword;cdecl;
+          locp:OCILobLocator):sword;cdecl;external;
 
   function OCILobErase(
           svchp:OCISvcCtx;
           errhp:OCIError;
           locp:OCILobLocator;
           amount:pcardinal;
-          offset:cardinal):sword;cdecl;
+          offset:cardinal):sword;cdecl;external;
 
   function OCILobFileClose(
           svchp:OCISvcCtx;
           errhp:OCIError;
-          filep:OCILobLocator):sword;cdecl;
+          filep:OCILobLocator):sword;cdecl;external;
 
   function OCILobFileCloseAll(
           svchp:OCISvcCtx;
-          errhp:OCIError):sword;cdecl;
+          errhp:OCIError):sword;cdecl;external;
 
   function OCILobFileExists(
           svchp:OCISvcCtx;
           errhp:OCIError;
           filep:OCILobLocator;
-          flag:pboolean):sword;cdecl;
+          flag:pboolean):sword;cdecl;external;
 
   function OCILobFileGetName(
           envhp:OCIEnv;
@@ -1163,19 +1161,19 @@ type
           dir_alias:PChar;
           d_length:pword;
           filename:PChar;
-          f_length:pword):sword;cdecl;
+          f_length:pword):sword;cdecl;external;
 
   function OCILobFileIsOpen(
           svchp:OCISvcCtx;
           errhp:OCIError;
           filep:OCILobLocator;
-          flag:pboolean):sword;cdecl;
+          flag:pboolean):sword;cdecl;external;
 
   function OCILobFileOpen(
           svchp:OCISvcCtx;
           errhp:OCIError;
           filep:OCILobLocator;
-          mode:byte):sword;cdecl;
+          mode:byte):sword;cdecl;external;
 
   function OCILobFileSetName(
           envhp:OCIEnv;
@@ -1184,25 +1182,25 @@ type
           dir_alias:PChar;
           d_length:word;
           filename:PChar;
-          f_length:word):sword;cdecl;
+          f_length:word):sword;cdecl;external;
 
   function OCILobFlushBuffer(
           svchp:OCISvcCtx;
           errhp:OCIError;
           locp:OCILobLocator;
-          flag:cardinal):sword;cdecl;
+          flag:cardinal):sword;cdecl;external;
 
   function OCILobGetLength(
           svchp:OCISvcCtx;
           errhp:OCIError;
           locp:OCILobLocator;
-          lenp:pcardinal):sword;cdecl;
+          lenp:pcardinal):sword;cdecl;external;
 
   function OCILobIsEqual(
           envhp:OCIEnv;
           x:OCILobLocator;
           y:OCILobLocator;
-          is_equal:pboolean):sword;cdecl;
+          is_equal:pboolean):sword;cdecl;external;
 
   function OCILobLoadFromFile(
           svchp:OCISvcCtx;
@@ -1211,13 +1209,13 @@ type
           src_filep:OCILobLocator;
           amount:cardinal;
           dst_offset:cardinal;
-          src_offset:cardinal):sword;cdecl;
+          src_offset:cardinal):sword;cdecl;external;
 
   function OCILobLocatorIsInit(
           envhp:OCIEnv;
           errhp:OCIError;
           locp:OCILobLocator;
-          is_initialized:pboolean):sword;cdecl;
+          is_initialized:pboolean):sword;cdecl;external;
 
   function OCILobRead(
           svchp:OCISvcCtx;
@@ -1230,13 +1228,13 @@ type
           ctxp:pointer;
           cbfp:pointer;
           csid:word;
-          csfrm:byte):sword;cdecl;
+          csfrm:byte):sword;cdecl;external;
 
   function OCILobTrim(
           svchp:OCISvcCtx;
           errhp:OCIError;
           locp:OCILobLocator;
-          newlen:cardinal):sword;cdecl;
+          newlen:cardinal):sword;cdecl;external;
 
   function OCILobWrite(
           svchp:OCISvcCtx;
@@ -1250,22 +1248,22 @@ type
           ctxp:pointer;
           cbfp:pointer;
           csid:word;
-          csfrm:byte):sword;cdecl;
+          csfrm:byte):sword;cdecl;external;
 
   function OCIBreak(
           hndlp:pointer;
-          errhp:OCIError):sword;cdecl;
+          errhp:OCIError):sword;cdecl;external;
 
   function OCIReset(
           hndlp:pointer;
-          errhp:OCIError):sword;cdecl;
+          errhp:OCIError):sword;cdecl;external;
 
   function OCIServerVersion(
           hndlp:pointer;
           errhp:OCIError;
           bufp:PChar;
           bufsz:cardinal;
-          hndltype:byte):sword;cdecl;
+          hndltype:byte):sword;cdecl;external;
 
   function OCIAttrGet(
           trgthndlp:pointer;
@@ -1273,7 +1271,7 @@ type
           attributep:pointer;
           sizep:pcardinal;
           attrtype:cardinal;
-          errhp:OCIError):sword;cdecl;
+          errhp:OCIError):sword;cdecl;external;
 
   function OCIAttrSet(
           trgthndlp:pointer;
@@ -1281,21 +1279,31 @@ type
           attributep:pointer;
           size:cardinal;
           attrtype:cardinal;
-          errhp:OCIError):sword;cdecl;
+          errhp:OCIError):sword;cdecl;external;
 
   function OCISvcCtxToLda(
           svchp:OCISvcCtx;
           errhp:OCIError;
-          ldap:pLda_Def):sword;cdecl;
+          ldap:pLda_Def):sword;cdecl;external;
 
   function OCILdaToSvcCtx(
           svchpp:OCISvcCtx;
           errhp:OCIError;
-          ldap:pLda_Def):sword;cdecl;
+          ldap:pLda_Def):sword;cdecl;external;
 
   function OCIResultSetToStmt(
           rsetdp:OCIResult;
-          errhp:OCIError):sword;cdecl;
+          errhp:OCIError):sword;cdecl;external;
+
+  function OCIDateToText(
+      err:OCIError;
+          date:POCIDate;
+          fmt:PChar;
+          fmt_length:ub1;
+          lang_name:PChar;
+      lang_length:ub4;
+          buf_size:PCardinal;
+          buf:PChar):sword;cdecl;external;
 
   {-------------------------------------------------------------------------------------------}
   { Security Package                                                                          }
@@ -1423,540 +1431,17 @@ type
   { Datatype Mapping                                                                          }
   {-------------------------------------------------------------------------------------------}
 
-  function OCIDateToText(
-      err:OCIError;
-          date:POCIDate;
-          fmt:PChar;
-          fmt_length:ub1;
-          lang_name:PChar;
-      lang_length:ub4;
-          buf_size:PCardinal;
-          buf:PChar):sword;cdecl;
-
 implementation
 
-  function OCIInitialize(
-          mode:cardinal;
-          ctxp:pointer;
-          malocfp:pointer;
-          ralocfp:pointer;
-          mfreefp:pointer):sword;cdecl;external;
-
-  function OCIHandleAlloc(
-          parenth:pointer;
-          var hndlpp:pointer;
-          AType:cardinal;
-          xtramem_sz:cardinal;
-          usrmempp:pointer):sword;cdecl;external;
-
-  function OCIHandleFree(
-          hndlp:pointer;
-          AType:cardinal):sword;cdecl;external;
-
-  function OCIEnvInit(
-          var envp: OCIEnv;
-
-          mode: ub4;
-          xtramemsz: Integer;
-          usrmempp: pointer): sword; cdecl;external;
-
-  function OCIDescriptorAlloc(
-          parenth:pointer;
-          descpp:pointer;
-          AType:cardinal;
-          xtramem_sz:cardinal;
-          usrmempp:pointer):sword;cdecl;external;
-
-  function OCIDescriptorFree(
-          descp:pointer;
-          AType:cardinal):sword;cdecl;external;
-
-  function OCIServerAttach(
-          srvhp:OCIServer;
-          errhp:OCIError;
-          dblink:PChar;
-          dblink_len:longint;
-          mode:cardinal):sword;cdecl;external;
-
-  function OCIServerDetach(
-          srvhp:OCIServer;
-          errhp:OCIError;
-          mode:cardinal):sword;cdecl;external;
-
-  function OCISessionBegin(
-          svchp:OCISvcCtx;
-          errhp:OCIError;
-          usrhp:OCISession;
-          credt:cardinal;
-          mode:cardinal):sword;cdecl;external;
-
-  function OCISessionEnd(
-          svchp:OCISvcCtx;
-          errhp:OCIError;
-          usrhp:OCISession;
-          mode:cardinal):sword;cdecl;external;
-
-  function OCILogon(
-          envhp:OCIEnv;
-          errhp:OCIError;
-          var svchp:OCISvcCtx;
-          username:PChar;
-          uname_len:cardinal;
-          password:PChar;
-          passwd_len:cardinal;
-          dbname:PChar;
-          dbname_len:cardinal):sword;cdecl;external;
-
-  function OCILogoff(
-          svchp:OCISvcCtx;
-          errhp:OCIError):sword;cdecl;external;
-
-  function OCIErrorGet(
-          hndlp:pointer;
-          recordno:cardinal;
-          sqlstate:PChar;
-          var errcodep:PLongint;
-          bufp:PChar;
-          bufsiz:cardinal;
-          AType:cardinal):sword;cdecl;external;
-
-  function OCIPasswordChange(
-          svchp:OCISvcCtx;
-          errhp:OCIError;
-          user_name:PChar;
-          usernm_len:cardinal;
-          opasswd:PChar;
-          opasswd_len:cardinal;
-          npasswd:PChar;
-          npasswd_len:cardinal;
-          mode:cardinal):sword;cdecl;external;
-
-  function OCIStmtPrepare(
-          stmtp:OCIStmt;
-          errhp:OCIError;
-          stmt:PChar;
-          stmt_len:cardinal;
-          language:cardinal;
-          mode:cardinal):sword;cdecl;external;
-
-  function OCIBindByPos(
-          stmtp:OCIStmt;
-          bindp:OCIBind;
-          errhp:OCIError;
-          position:cardinal;
-          valuep:pointer;
-          value_sz:longint;
-          dty:word;
-          indp:pointer;
-          alenp:pword; rcodep:pword;
-          maxarr_len:cardinal;
-          curelep:pcardinal;
-          mode:cardinal):sword;cdecl;external;
-
-  function OCIBindByName(
-          stmtp:OCIStmt;
-          bindp:OCIBind;
-          errhp:OCIError;
-          placeholder:PChar;
-          placeh_len:longint;
-          valuep:pointer;
-          value_sz:longint;
-          dty:word;
-          indp:pointer;
-          alenp:pword;
-          rcodep:pword;
-          maxarr_len:cardinal;
-          curelep:pcardinal;
-          mode:cardinal):sword;cdecl;external;
 
-  function OCIBindObject(
-          bindp:OCIBind;
-          errhp:OCIError;
-          AType:OCIType;
-          pgvpp:pointer;
-          pvszsp:pcardinal;
-          indpp:pointer;
-          indszp:pcardinal):sword;cdecl;external;
+end.
 
-  function OCIBindDynamic(
-          bindp:OCIBind;
-          errhp:OCIError;
-          ictxp:pointer;
-          icbfp:OCICallbackInBind;
-          octxp:pointer;
-          ocbfp:OCICallbackOutBind):sword;cdecl;external;
+{
+  $Log$
+  Revision 1.4  2004-11-21 16:33:55  peter
+    * external fixes
 
-  function OCIBindArrayOfStruct(
-          bindp:OCIBind;
-          errhp:OCIError;
-          pvskip:cardinal;
-          indskip:cardinal;
-          alskip:cardinal;
-          rcskip:cardinal):sword;cdecl;external;
-
-  function OCIStmtGetPieceInfo(
-          stmtp:OCIStmt;
-          errhp:OCIError;
-          hndlpp:pointer;
-          typep:pcardinal;
-          in_outp:pbyte;
-          iterp:pcardinal;
-          idxp:pcardinal;
-          piecep:pbyte):sword;cdecl;external;
-
-  function OCIStmtSetPieceInfo(
-          hndlp:pointer;
-          AType:cardinal;
-          errhp:OCIError;
-          bufp:pointer;
-          alenp:pcardinal;
-          piece:byte;
-          indp:pointer;
-          rcodep:pword):sword;cdecl;external;
-
-  function OCIStmtExecute(
-          svchp:OCISvcCtx;
-          stmtp:OCIStmt;
-          errhp:OCIError;
-          iters:cardinal;
-          rowoff:cardinal;
-          snap_in:OCISnapshot;
-          snap_out:OCISnapshot;
-          mode:cardinal):sword;cdecl;external;
-
-  function OCIDefineByPos(
-          stmtp:OCIStmt;
-          defnp:OCIDefine;
-          errhp:OCIError;
-          position:cardinal;
-          valuep:pointer;
-          value_sz:longint;
-          dty:word;
-          indp:pointer;
-          rlenp:pword;
-          rcodep:pword;
-          mode:cardinal):sword;cdecl;external;
-
-  function OCIDefineObject(
-          defnp:OCIDefine;
-          errhp:OCIError;
-          AType:OCIType;
-          pgvpp:pointer;
-          pvszsp:pcardinal;
-          indpp:pointer;
-          indszp:pcardinal):sword;cdecl;external;
-
-  function OCIDefineDynamic(
-          defnp:OCIDefine;
-          errhp:OCIError;
-          octxp:pointer;
-          ocbfp:OCICallbackDefine):sword;cdecl;external;
-
-  function OCIDefineArrayOfStruct(
-          defnp:OCIDefine;
-          errhp:OCIError;
-          pvskip:cardinal;
-          indskip:cardinal;
-          rlskip:cardinal;
-          rcskip:cardinal):sword;cdecl;external;
-
-  function OCIStmtFetch(
-          stmtp:OCIStmt;
-          errhp:OCIError;
-          nrows:cardinal;
-          orientation:word;
-          mode:cardinal):sword;cdecl;external;
-
-  function OCIStmtGetBindInfo(
-          stmtp:OCIStmt;
-          errhp:OCIError;
-          size:cardinal;
-          startloc:cardinal;
-          found:plongint;
-          bvnp:PChar;
-          bvnl:byte;
-          invp:PChar;
-          inpl:byte;
-          dupl:byte;
-          hndl:OCIBind):sword;cdecl;external;
-
-  function OCIDescribeAny(
-          svchp:OCISvcCtx;
-          errhp:OCIError;
-          objptr:pointer;
-          objnm_len:cardinal;
-          objptr_typ:byte;
-          info_level:byte;
-          objtyp:byte;
-          dschp:OCIDescribe):sword;cdecl;external;
-
-  function OCIParamGet(
-          hndlp:pointer;
-          htype:cardinal;
-          errhp:OCIError;
-          parmdpp:pointer;
-          pos:cardinal):sword;cdecl;external;
-
-  function OCIParamSet(
-          hdlp:pointer;
-          htyp:cardinal;
-          errhp:OCIError;
-          dscp:pointer;
-          dtyp:cardinal;
-          pos:cardinal):sword;cdecl;external;
-
-  function OCITransStart(
-          svchp:OCISvcCtx;
-          errhp:OCIError;
-          timeout:uword;
-          flags:cardinal):sword;cdecl;external;
-
-  function OCITransDetach(
-          svchp:OCISvcCtx;
-          errhp:OCIError;
-          flags:cardinal):sword;cdecl;external;
-
-  function OCITransCommit(
-          svchp:OCISvcCtx;
-          errhp:OCIError;
-          flags:cardinal):sword;cdecl;external;
-
-  function OCITransRollback(
-          svchp:OCISvcCtx;
-          errhp:OCIError;
-          flags:cardinal):sword;cdecl;external;
-
-  function OCITransPrepare(
-          svchp:OCISvcCtx;
-          errhp:OCIError;
-          flags:cardinal):sword;cdecl;external;
-
-  function OCITransForget(
-          svchp:OCISvcCtx;
-          errhp:OCIError;
-          flags:cardinal):sword;cdecl;external;
-
-  function OCILobAppend(
-          svchp:OCISvcCtx;
-          errhp:OCIError;
-          dst_locp:OCILobLocator;
-          src_locp:OCILobLocator):sword;cdecl;external;
-
-  function OCILobAssign(
-          envhp:OCIEnv;
-          errhp:OCIError;
-          src_locp:OCILobLocator;
-          dst_locpp:OCILobLocator):sword;cdecl;external;
-
-  function OCILobCharSetForm(
-          envhp:OCIEnv;
-          errhp:OCIError;
-          locp:OCILobLocator;
-          csfrm:pbyte):sword;cdecl;external;
-
-  function OCILobCharSetId(
-          envhp:OCIEnv;
-          errhp:OCIError;
-          locp:OCILobLocator;
-          csid:pword):sword;cdecl;external;
-
-  function OCILobCopy(
-          svchp:OCISvcCtx;
-          errhp:OCIError;
-          dst_locp:OCILobLocator;
-          src_locp:OCILobLocator;
-          amount:cardinal;
-          dst_offset:cardinal;
-          src_offset:cardinal):sword;cdecl;external;
-
-  function OCILobDisableBuffering(
-          svchp:OCISvcCtx;
-          errhp:OCIError;
-          locp:OCILobLocator):sword;cdecl;external;
-
-  function OCILobEnableBuffering(
-          svchp:OCISvcCtx;
-          errhp:OCIError;
-          locp:OCILobLocator):sword;cdecl;external;
-
-  function OCILobErase(
-          svchp:OCISvcCtx;
-          errhp:OCIError;
-          locp:OCILobLocator;
-          amount:pcardinal;
-          offset:cardinal):sword;cdecl;external;
-
-  function OCILobFileClose(
-          svchp:OCISvcCtx;
-          errhp:OCIError;
-          filep:OCILobLocator):sword;cdecl;external;
-
-  function OCILobFileCloseAll(
-          svchp:OCISvcCtx;
-          errhp:OCIError):sword;cdecl;external;
-
-  function OCILobFileExists(
-          svchp:OCISvcCtx;
-          errhp:OCIError;
-          filep:OCILobLocator;
-          flag:pboolean):sword;cdecl;external;
-
-  function OCILobFileGetName(
-          envhp:OCIEnv;
-          errhp:OCIError;
-          filep:OCILobLocator;
-          dir_alias:PChar;
-          d_length:pword;
-          filename:PChar;
-          f_length:pword):sword;cdecl;external;
-
-  function OCILobFileIsOpen(
-          svchp:OCISvcCtx;
-          errhp:OCIError;
-          filep:OCILobLocator;
-          flag:pboolean):sword;cdecl;external;
-
-  function OCILobFileOpen(
-          svchp:OCISvcCtx;
-          errhp:OCIError;
-          filep:OCILobLocator;
-          mode:byte):sword;cdecl;external;
-
-  function OCILobFileSetName(
-          envhp:OCIEnv;
-          errhp:OCIError;
-          filepp:OCILobLocator;
-          dir_alias:PChar;
-          d_length:word;
-          filename:PChar;
-          f_length:word):sword;cdecl;external;
-
-  function OCILobFlushBuffer(
-          svchp:OCISvcCtx;
-          errhp:OCIError;
-          locp:OCILobLocator;
-          flag:cardinal):sword;cdecl;external;
-
-  function OCILobGetLength(
-          svchp:OCISvcCtx;
-          errhp:OCIError;
-          locp:OCILobLocator;
-          lenp:pcardinal):sword;cdecl;external;
-
-  function OCILobIsEqual(
-          envhp:OCIEnv;
-          x:OCILobLocator;
-          y:OCILobLocator;
-          is_equal:pboolean):sword;cdecl;external;
-
-  function OCILobLoadFromFile(
-          svchp:OCISvcCtx;
-          errhp:OCIError;
-          dst_locp:OCILobLocator;
-          src_filep:OCILobLocator;
-          amount:cardinal;
-          dst_offset:cardinal;
-          src_offset:cardinal):sword;cdecl;external;
-
-  function OCILobLocatorIsInit(
-          envhp:OCIEnv;
-          errhp:OCIError;
-          locp:OCILobLocator;
-          is_initialized:pboolean):sword;cdecl;external;
-
-  function OCILobRead(
-          svchp:OCISvcCtx;
-          errhp:OCIError;
-          locp:OCILobLocator;
-          amtp:pcardinal;
-          offset:cardinal;
-          bufp:pointer;
-          bufl:cardinal;
-          ctxp:pointer;
-          cbfp:pointer;
-          csid:word;
-          csfrm:byte):sword;cdecl;external;
-
-  function OCILobTrim(
-          svchp:OCISvcCtx;
-          errhp:OCIError;
-          locp:OCILobLocator;
-          newlen:cardinal):sword;cdecl;external;
-
-  function OCILobWrite(
-          svchp:OCISvcCtx;
-          errhp:OCIError;
-          locp:OCILobLocator;
-          amtp:pcardinal;
-          offset:cardinal;
-          bufp:pointer;
-          buflen:cardinal;
-          piece:byte;
-          ctxp:pointer;
-          cbfp:pointer;
-          csid:word;
-          csfrm:byte):sword;cdecl;external;
-
-  function OCIBreak(
-          hndlp:pointer;
-          errhp:OCIError):sword;cdecl;external;
-
-  function OCIReset(
-          hndlp:pointer;
-          errhp:OCIError):sword;cdecl;external;
-
-  function OCIServerVersion(
-          hndlp:pointer;
-          errhp:OCIError;
-          bufp:PChar;
-          bufsz:cardinal;
-          hndltype:byte):sword;cdecl;external;
-
-  function OCIAttrGet(
-          trgthndlp:pointer;
-          trghndltyp:cardinal;
-          attributep:pointer;
-          sizep:pcardinal;
-          attrtype:cardinal;
-          errhp:OCIError):sword;cdecl;external;
-
-  function OCIAttrSet(
-          trgthndlp:pointer;
-          trghndltyp:cardinal;
-          attributep:pointer;
-          size:cardinal;
-          attrtype:cardinal;
-          errhp:OCIError):sword;cdecl;external;
-
-  function OCISvcCtxToLda(
-          svchp:OCISvcCtx;
-          errhp:OCIError;
-          ldap:pLda_Def):sword;cdecl;external;
-
-  function OCILdaToSvcCtx(
-          svchpp:OCISvcCtx;
-          errhp:OCIError;
-          ldap:pLda_Def):sword;cdecl;external;
-
-  function OCIResultSetToStmt(
-          rsetdp:OCIResult;
-          errhp:OCIError):sword;cdecl;external;
-
-  function OCIDateToText(
-      err:OCIError;
-          date:POCIDate;
-          fmt:PChar;
-          fmt_length:ub1;
-          lang_name:PChar;
-      lang_length:ub4;
-          buf_size:PCardinal;
-          buf:PChar):sword;cdecl;external;
-
-end.
-
-{
-  $Log$
-  Revision 1.3  2003-08-09 15:19:01  marco
+  Revision 1.3  2003/08/09 15:19:01  marco
    * dl linking killed
 
   Revision 1.2  2002/09/07 15:42:53  peter

+ 11 - 21
packages/base/postgres/dllist.pp

@@ -36,26 +36,6 @@ type
         dll_tail : PDlelem;
      end;
 
-function  DLNewList:PDllist; cdecl;
-procedure DLFreeList(_para1:PDllist); cdecl;
-function  DLNewElem(val : pointer) :PDlelem; cdecl;
-procedure DLFreeElem(_para1:PDlelem); cdecl;
-function  DLGetHead(_para1:PDllist):PDlelem; cdecl;
-function  DLGetTail(_para1:PDllist):PDlelem; cdecl;
-function  DLRemTail(l:PDllist):PDlelem; cdecl;
-function  DLGetPred(_para1:PDlelem):PDlelem; cdecl;
-function  DLGetSucc(_para1:PDlelem):PDlelem; cdecl;
-procedure DLRemove(_para1:PDlelem); cdecl;
-procedure DLAddHead(list:PDllist; node:PDlelem);cdecl;
-procedure DLAddTail(list:PDllist; node:PDlelem);cdecl;
-function  DLRemHead(list:PDllist):PDlelem;cdecl;
-
-{ Macro translated }
-Function  DLE_VAL(elem : PDlelem) : pointer;
-
-implementation
-
-
 function  DLNewList:PDllist;cdecl; external;
 procedure DLFreeList(_para1:PDllist);cdecl; external;
 function  DLNewElem(val : pointer) :PDlelem;cdecl;external;
@@ -70,6 +50,13 @@ procedure DLAddHead(list:PDllist; node:PDlelem);cdecl; external;
 procedure DLAddTail(list:PDllist; node:PDlelem);cdecl; external;
 function  DLRemHead(list:PDllist):PDlelem;cdecl; external;
 
+{ Macro translated }
+Function  DLE_VAL(elem : PDlelem) : pointer;
+
+implementation
+
+
+
 Function DLE_VAL(elem : PDlelem) : pointer;
 begin
   DLE_VAL:=elem^.dle_val
@@ -77,7 +64,10 @@ end;
 
 end.
   $Log$
-  Revision 1.2  2002-09-07 15:42:53  peter
+  Revision 1.3  2004-11-21 16:33:55  peter
+    * external fixes
+
+  Revision 1.2  2002/09/07 15:42:53  peter
     * old logs removed and tabs fixed
 
   Revision 1.1  2002/01/29 17:54:56  peter

+ 16 - 80
packages/base/postgres/postgres.pp

@@ -165,74 +165,6 @@ type
    end;
    PPQconninfoOption = ^TPQconninfoOption;
 
-
-Function  PQconnectdb(conninfo:Pchar):PPGconn; cdecl;
-Function  PQconndefaults:PPQconninfoOption; cdecl;
-Function  PQsetdbLogin(pghost,pgport,pgoptions,pgtty,dbName,login,pwd : pchar):PPGConn; cdecl;
-{$ifdef PGSQL6_2_1}
-Function  PQsetdb(pghost,pgport,pgoptions,pgtty,dbName : pchar):PPGConn; cdecl;
-{$else}
-Function  PQsetdb(pghost,pgport,pgoptions,pgtty,dbName : pchar):PPGConn;
-{$endif}
-procedure PQfinish(conn:PPGconn); cdecl;
-procedure PQreset(conn:PPGconn); cdecl;
-Function  PQdb(conn:PPGconn):Pchar; cdecl;
-Function  PQuser(conn:PPGconn):Pchar; cdecl;
-Function  PQhost(conn:PPGconn):Pchar; cdecl;
-Function  PQoptions(conn:PPGconn):Pchar; cdecl;
-Function  PQport(conn:PPGconn):Pchar; cdecl;
-Function  PQtty(conn:PPGconn):Pchar; cdecl;
-Function  PQstatus(conn:PPGconn):TConnStatusType; cdecl;
-Function  PQerrorMessage(conn:PPGconn):Pchar; cdecl;
-procedure PQtrace(conn:PPGconn; debug_port:PFILE); cdecl;
-procedure PQuntrace(conn:PPGconn); cdecl;
-Function  PQexec(conn:PPGconn; query:Pchar):PPGresult; cdecl;
-Function  PQgetline(conn:PPGconn; str:Pchar; len:longint):longint; cdecl;
-Function  PQendcopy(conn:PPGconn):longint; cdecl;
-Function  PQputline(conn:PPGconn; str:Pchar) : longint; cdecl;
-Function  PQresultStatus(res:PPGresult):TExecStatusType; cdecl;
-Function  PQntuples(res:PPGresult):longint; cdecl;
-Function  PQnfields(res:PPGresult):longint; cdecl;
-Function  PQfname(res:PPGresult; field_num:longint):Pchar; cdecl;
-Function  PQfnumber(res:PPGresult; field_name:Pchar):longint; cdecl;
-Function  PQftype(res:PPGresult; field_num:longint):Oid; cdecl;
-Function  PQfsize(res:PPGresult; field_num:longint):integer; cdecl;
-Function  PQcmdStatus(res:PPGresult):Pchar; cdecl;
-
-Function  PQoidStatus(res : PPGresult) : pchar; cdecl;
-Function  PQcmdTuples(res : PPGresult) : pchar; cdecl;
-
-Function  PQgetvalue(res:PPGresult; tup_num:longint; field_num:longint):Pchar; cdecl;
-Function  PQgetlength(res:PPGresult; tup_num:longint; field_num:longint):longint; cdecl;
-Function  PQgetisnull(res:PPGresult; tup_num:longint; field_num:longint):longint; cdecl;
-procedure PQclear(res:PPGresult);cdecl;
-procedure PQdisplayTuples(res:PPGresult; fp:PFILE; fillAlign:longint; fieldSep:Pchar; printHeader:longint; quiet:longint);cdecl;
-procedure PQprintTuples(res:PPGresult; fout:PFILE; printAttName:longint; terseOutput:longint; width:longint);cdecl;
-procedure PQprint(fout:PFILE; res:PPGresult; ps:PPQprintOpt);cdecl;
-Function  PQnotifies(conn:PPGconn):PPGnotify; cdecl;
-Function  PQfn(conn:PPGconn; fnid:longint; result_buf:Plongint; result_len:Plongint; result_is_int:longint; args:PPQArgBlock; nargs:longint):PPGresult; cdecl;
-Function  fe_getauthsvc(PQerrormsg:Pchar):MsgType; cdecl;
-procedure fe_setauthsvc(name:Pchar; PQerrormsg:Pchar);cdecl;
-Function  fe_getauthname(PQerrormsg:Pchar):Pchar; cdecl;
-Function  pqGets(s:Pchar; maxlen:longint; stream:PFILE; debug:PFILE):longint; cdecl;
-Function  pqGetnchar(s:Pchar; maxlen:longint; stream:PFILE; debug:PFILE):longint; cdecl;
-Function  pqPutnchar(s:Pchar; maxlen:longint; stream:PFILE; debug:PFILE):longint; cdecl;
-Function  pqPuts(s:Pchar; stream:PFILE; debug:PFILE):longint; cdecl;
-Function  pqGetc(stream:PFILE; debug:PFILE):longint; cdecl;
-Function  pqGetInt(result:Plongint; bytes:longint; stream:PFILE; debug:PFILE):longint; cdecl;
-Function  pqPutInt(n:longint; bytes:longint; stream:PFILE; debug:PFILE):longint; cdecl;
-procedure pqFlush(stream:PFILE; debug:PFILE);cdecl;
-Function  lo_open(conn:PPGconn; lobjId:Oid; mode:longint):longint; cdecl;
-Function  lo_close(conn:PPGconn; fd:longint):longint; cdecl;
-Function  lo_read(conn:PPGconn; fd:longint; buf:Pchar; len:longint):longint; cdecl;
-Function  lo_write(conn:PPGconn; fd:longint; buf:Pchar; len:longint):longint; cdecl;
-Function  lo_lseek(conn:PPGconn; fd:longint; offset:longint; whence:longint):longint; cdecl;
-Function  lo_creat(conn:PPGconn; mode:longint):Oid; cdecl;
-Function  lo_tell(conn:PPGconn; fd:longint):longint; cdecl;
-Function  lo_unlink(conn:PPGconn; lobjId:Oid):longint; cdecl;
-Function  lo_import(conn:PPGconn; filename:Pchar):Oid; cdecl;
-Function  lo_export(conn:PPGconn; lobjId:Oid; filename:Pchar):longint; cdecl;
-
 const
    MAX_MESSAGE_LEN = 8193;
    BYTELEN = 8;
@@ -247,8 +179,6 @@ type
    TTUPLE = pointer;
    PTUPLE = ^TTUPLE;
 
-implementation
-
 
   function  PQconnectdb(conninfo:Pchar):PPGconn;cdecl; external;
   function  PQconndefaults:PPQconninfoOption;cdecl; external;
@@ -309,6 +239,16 @@ implementation
   function  lo_unlink(conn:PPGconn; lobjId:Oid):longint; cdecl; external;
   function  lo_import(conn:PPGconn; filename:Pchar):Oid;cdecl;external;
   function  lo_export(conn:PPGconn; lobjId:Oid; filename:Pchar):longint; cdecl; external;
+  
+{$ifdef PGSQL6_2_1}
+  Function  PQsetdb(pghost,pgport,pgoptions,pgtty,dbName : pchar):PPGConn; cdecl;external;
+{$else}
+  function PQsetdb(pghost,pgport,pgoptions,pgtty,dbName : pchar):PPGConn;
+{$endif}
+
+implementation
+
+
 
 { Define helper functions }
 
@@ -317,21 +257,17 @@ implementation
   in version 6.3.xxx, PGsetdb is a macro, pointing to setdblogin !!
 }
 
-{$ifdef PGSQL6_2_1}
-Function  PQsetdb(pghost,pgport,pgoptions,pgtty,dbName : pchar):PPGConn; cdecl;external;
-{$else}
+{$ifndef PGSQL6_2_1}
 function PQsetdb(pghost,pgport,pgoptions,pgtty,dbName : pchar):PPGConn;
-
 begin
  PQsetdb:=PQsetdbLogin(pghost,pgport,pgoptions,pgtty,dbName,nil,nil);
 end;
 {$endif}
 
-end.  $Log$
-end.  Revision 1.2  2002-09-07 15:42:53  peter
-end.    * old logs removed and tabs fixed
-end.
-end.  Revision 1.1  2002/01/29 17:54:56  peter
-end.    * splitted to base and extra
 end.
+{
+  $Log$
+  Revision 1.3  2004-11-21 16:33:55  peter
+    * external fixes
+
 }

+ 192 - 256
packages/extra/bfd/bfd.pas

@@ -90,6 +90,7 @@ Type
 const
   BFD_VERSION   = '2.10.91';
   BFD_ARCH_SIZE = 32;
+  BFD_LIB_NAME = 'libbfd-'+BFD_VERSION+'.dll';
 
 type
 (* forward declaration *)
@@ -1571,21 +1572,21 @@ is in practice already 0 *)
     bfd_getx64:           function (const Pbfd_byte): bfd_vma; cdecl;
     bfd_getx_signed_64:   function (const Pbfd_byte):bfd_signed_vma; cdecl;
     bfd_putx64:           procedure(a: bfd_vma; b: Pbfd_byte); cdecl;
-    bfd_getx32:           function (const Pbfd_byte):bfd_vma; cdecl;
+    bfd_getx32:           function (const Pbfd_byte):bfd_vma; cdecl; 
     bfd_getx_signed_32:   function (const Pbfd_byte):bfd_signed_vma; cdecl;
-    bfd_putx32:           procedure(a: bfd_vma; b: Pbfd_byte); cdecl;
-    bfd_getx16:           function (const Pbfd_byte):bfd_vma; cdecl;
-    bfd_getx_signed_16:   function (const Pbfd_byte):bfd_signed_vma; cdecl;
+    bfd_putx32:           procedure(a: bfd_vma; b: Pbfd_byte); cdecl; 
+    bfd_getx16:           function (const Pbfd_byte):bfd_vma; cdecl; 
+    bfd_getx_signed_16:   function (const Pbfd_byte):bfd_signed_vma; cdecl; 
     bfd_putx16:           procedure(a: bfd_vma; b: Pbfd_byte); cdecl;
-    bfd_h_getx64:         function (const Pbfd_byte):bfd_vma; cdecl;
+    bfd_h_getx64:         function (const Pbfd_byte):bfd_vma; cdecl; 
     bfd_h_getx_signed_64: function (const Pbfd_byte):bfd_signed_vma; cdecl;
-    bfd_h_putx64:         procedure(a: bfd_vma; b: Pbfd_byte); cdecl;
-    bfd_h_getx32:         function (const Pbfd_byte):bfd_vma; cdecl;
+    bfd_h_putx64:         procedure(a: bfd_vma; b: Pbfd_byte); cdecl; 
+    bfd_h_getx32:         function (const Pbfd_byte):bfd_vma; cdecl; 
     bfd_h_getx_signed_32: function (const Pbfd_byte):bfd_signed_vma; cdecl;
-    bfd_h_putx32:         procedure(a: bfd_vma; b: Pbfd_byte); cdecl;
-    bfd_h_getx16:         function (const Pbfd_byte):bfd_vma; cdecl;
-    bfd_h_getx_signed_16: function (const Pbfd_byte):bfd_signed_vma; cdecl;
-    bfd_h_putx16:         procedure(a: bfd_vma; b: Pbfd_byte); cdecl;
+    bfd_h_putx32:         procedure(a: bfd_vma; b: Pbfd_byte); cdecl; 
+    bfd_h_getx16:         function (const Pbfd_byte):bfd_vma; cdecl; 
+    bfd_h_getx_signed_16: function (const Pbfd_byte):bfd_signed_vma; cdecl; 
+    bfd_h_putx16:         procedure(a: bfd_vma; b: Pbfd_byte); cdecl; 
     _bfd_check_format:   array [bfd_format] of check_format_proc;
     _bfd_set_format:     array [bfd_format] of set_format_proc;
     _bfd_write_contents: array [bfd_format] of write_contents_proc;
@@ -1593,121 +1594,121 @@ is in practice already 0 *)
     (* Generic entry points.  *)
 
     (* Called when the BFD is being closed to do any necessary cleanup.  *)
-    _close_and_cleanup:     function(a: PBFD  ):bfd_boolean;cdecl;
+    _close_and_cleanup:     function(a: PBFD  ):bfd_boolean;cdecl; 
     (* Ask the BFD to free all cached information.  *)
-    _bfd_free_cached_info:  function(a: PBFD  ):bfd_boolean;cdecl;
+    _bfd_free_cached_info:  function(a: PBFD  ):bfd_boolean;cdecl; 
     (* Called when a new section is created.  *)
-    _new_section_hook:      function(a: PBFD; b: PSec):bfd_boolean;cdecl;
+    _new_section_hook:      function(a: PBFD; b: PSec):bfd_boolean;cdecl; 
     (* Read the contents of a section.  *)
-    _bfd_get_section_contents:  function(a: PBFD; b: PSec; c: pointer; d: file_ptr; e: bfd_size_type):bfd_boolean;cdecl;
-    _bfd_get_section_contents_in_window: function(a: PBFD; b: PSec; c: Pbfd_window; d:file_ptr; e: bfd_size_type):bfd_boolean;cdecl;
+    _bfd_get_section_contents:  function(a: PBFD; b: PSec; c: pointer; d: file_ptr; e: bfd_size_type):bfd_boolean;cdecl; 
+    _bfd_get_section_contents_in_window: function(a: PBFD; b: PSec; c: Pbfd_window; d:file_ptr; e: bfd_size_type):bfd_boolean;cdecl; 
 
     (* Entry points to copy private data.  *)
 
     (* Called to copy BFD general private data from one object file
        to another.  *)
-    _bfd_copy_private_bfd_data:  function(a: PBFD; b: PBFD  ):bfd_boolean;cdecl;
+    _bfd_copy_private_bfd_data:  function(a: PBFD; b: PBFD  ):bfd_boolean;cdecl; 
     (* Called to merge BFD general private data from one object file
        to a common output file when linking.  *)
-    _bfd_merge_private_bfd_data:  function(a: PBFD; b: PBFD  ):bfd_boolean;cdecl;
+    _bfd_merge_private_bfd_data:  function(a: PBFD; b: PBFD  ):bfd_boolean;cdecl; 
     (* Called to copy BFD private section data from one object file
        to another.  *)
-    _bfd_copy_private_section_data: function(a: PBFD; b:PSec; c: PBFD; d: PSec):bfd_boolean;cdecl;
+    _bfd_copy_private_section_data: function(a: PBFD; b:PSec; c: PBFD; d: PSec):bfd_boolean;cdecl; 
     (* Called to copy BFD private symbol data from one symbol
        to another.  *)
-    _bfd_copy_private_symbol_data: function(a: PBFD; b: Pasymbol; c: PBFD; d: Pasymbol):bfd_boolean;cdecl;
+    _bfd_copy_private_symbol_data: function(a: PBFD; b: Pasymbol; c: PBFD; d: Pasymbol):bfd_boolean;cdecl; 
     (* Called to set private backend flags *)
-    _bfd_set_private_flags: function(a: PBFD; b:flagword):bfd_boolean; cdecl;
+    _bfd_set_private_flags: function(a: PBFD; b:flagword):bfd_boolean; cdecl; 
 
     (* Called to print private BFD data *)
-    _bfd_print_private_bfd_data: function(a: PBFD; b: pointer):bfd_boolean; cdecl;
+    _bfd_print_private_bfd_data: function(a: PBFD; b: pointer):bfd_boolean; cdecl; 
 
     (* Core file entry points.  *)
 
     (* Archive entry points.  *)
 
-    _bfd_slurp_armap: function(a: PBFD):bfd_boolean;cdecl;
-    _bfd_slurp_extended_name_table: function(a: PBFD  ):bfd_boolean;cdecl;
-    _bfd_construct_extended_name_table: function(a: PBFD; b: Ppchar; c: Pbfd_size_type; d: Ppchar):bfd_boolean;cdecl;
-    _bfd_truncate_arname: procedure (a: PBFD; b: pchar; c: pchar);cdecl;
-    write_armap: function(arch: PBFD; elength: LongWord; map: Porl; orl_count: LongWord; stridx: integer):bfd_boolean;cdecl;
-    _bfd_read_ar_hdr_fn: function(a: PBFD  ):pointer;cdecl;
-    openr_next_archived_file: function(arch: PBFD; prev: PBFD):PBFD;cdecl;
+    _bfd_slurp_armap: function(a: PBFD):bfd_boolean;cdecl; 
+    _bfd_slurp_extended_name_table: function(a: PBFD  ):bfd_boolean;cdecl; 
+    _bfd_construct_extended_name_table: function(a: PBFD; b: Ppchar; c: Pbfd_size_type; d: Ppchar):bfd_boolean;cdecl; 
+    _bfd_truncate_arname: procedure (a: PBFD; b: pchar; c: pchar);cdecl; 
+    write_armap: function(arch: PBFD; elength: LongWord; map: Porl; orl_count: LongWord; stridx: integer):bfd_boolean;cdecl; 
+    _bfd_read_ar_hdr_fn: function(a: PBFD  ):pointer;cdecl; 
+    openr_next_archived_file: function(arch: PBFD; prev: PBFD):PBFD;cdecl; 
 
 
-    _bfd_get_elt_at_index: function(a: PBFD; b: symindex):PBFD;cdecl;
-    _bfd_stat_arch_elt: function(a: PBFD; b: Pstat ):integer;cdecl;
-    _bfd_update_armap_timestamp: function(a: PBFD  ):bfd_boolean;cdecl;
+    _bfd_get_elt_at_index: function(a: PBFD; b: symindex):PBFD;cdecl; 
+    _bfd_stat_arch_elt: function(a: PBFD; b: Pstat ):integer;cdecl; 
+    _bfd_update_armap_timestamp: function(a: PBFD  ):bfd_boolean;cdecl; 
 
     (* Entry points used for symbols.  *)
 
-    _bfd_get_symtab_upper_bound: function(a: PBFD  ):LongInt;cdecl;
-    _bfd_canonicalize_symtab: function(a: PBFD; b: PPsymbol_cache_entry):LongInt;cdecl;
+    _bfd_get_symtab_upper_bound: function(a: PBFD  ):LongInt;cdecl; 
+    _bfd_canonicalize_symtab: function(a: PBFD; b: PPsymbol_cache_entry):LongInt;cdecl; 
 
 
-    _bfd_make_empty_symbol: function(a: PBFD  ): PPsymbol_cache_entry;cdecl;
+    _bfd_make_empty_symbol: function(a: PBFD  ): PPsymbol_cache_entry;cdecl; 
 
-    _bfd_print_symbol: procedure(a: PBFD; b: pointer; c: Psymbol_cache_entry; d: bfd_print_symbol);cdecl;
-    _bfd_get_symbol_info: procedure (a: PBFD; b: Psymbol_cache_entry; c:Psymbol_info);cdecl;
-    _bfd_is_local_label_name: function(a: PBFD; b: pchar):bfd_boolean;cdecl;
+    _bfd_print_symbol: procedure(a: PBFD; b: pointer; c: Psymbol_cache_entry; d: bfd_print_symbol);cdecl; 
+    _bfd_get_symbol_info: procedure (a: PBFD; b: Psymbol_cache_entry; c:Psymbol_info);cdecl; 
+    _bfd_is_local_label_name: function(a: PBFD; b: pchar):bfd_boolean;cdecl; 
 
-    _get_lineno: function( a: PBFD; b: Psymbol_cache_entry):Palent;cdecl;
-    _bfd_find_nearest_line: function(abfd: PBFD; section: Psec; symbols: PPsymbol_cache_entry; offset: bfd_vma; fil: pchar; func: Ppchar;  lin: PLongWord):bfd_boolean;cdecl;
+    _get_lineno: function( a: PBFD; b: Psymbol_cache_entry):Palent;cdecl; 
+    _bfd_find_nearest_line: function(abfd: PBFD; section: Psec; symbols: PPsymbol_cache_entry; offset: bfd_vma; fil: pchar; func: Ppchar;  lin: PLongWord):bfd_boolean;cdecl; 
    (* Back-door to allow format-aware applications to create debug symbols
       while using BFD for everything else.  Currently used by the assembler
       when creating COFF files.  *)
-    _bfd_make_debug_symbol: function( abfd: PBFD ; ptr: pointer; size: LongWord ):Pasymbol;cdecl;
-    _read_minisymbols:   function(a: PBFD; b: bfd_boolean; c: PPointer; d: PLongWord):LongInt;cdecl;
-    _minisymbol_to_symbol: function(a: PBFD; b:bfd_boolean; c: pointer; d: Pasymbol):Pasymbol;cdecl;
+    _bfd_make_debug_symbol: function( abfd: PBFD ; ptr: pointer; size: LongWord ):Pasymbol;cdecl; 
+    _read_minisymbols:   function(a: PBFD; b: bfd_boolean; c: PPointer; d: PLongWord):LongInt;cdecl; 
+    _minisymbol_to_symbol: function(a: PBFD; b:bfd_boolean; c: pointer; d: Pasymbol):Pasymbol;cdecl; 
 
     (* Routines for relocs.  *)
 
-    _get_reloc_upper_bound: function(a: PBFD; b: PSec):LongInt;cdecl;
-    _bfd_canonicalize_reloc: function(a: PBFD; b: PSec;c: PParelent; d: PPsymbol_cache_entry ):LongInt;cdecl;
+    _get_reloc_upper_bound: function(a: PBFD; b: PSec):LongInt;cdecl; 
+    _bfd_canonicalize_reloc: function(a: PBFD; b: PSec;c: PParelent; d: PPsymbol_cache_entry ):LongInt;cdecl; 
     (* See documentation on reloc types.  *)
 
-    reloc_type_lookup: function(abfd: PBFD ; code: bfd_reloc_code_real): PPreloc_howto;cdecl;
+    reloc_type_lookup: function(abfd: PBFD ; code: bfd_reloc_code_real): PPreloc_howto;cdecl; 
 
     (* Routines used when writing an object file.  *)
 
-    _bfd_set_arch_mach: function( a: PBFD; b:bfd_architecture; c:LongWord): bfd_boolean;cdecl;
+    _bfd_set_arch_mach: function( a: PBFD; b:bfd_architecture; c:LongWord): bfd_boolean;cdecl; 
 
-    _bfd_set_section_contents: function(a: PBFD; b: PSec; c: pointer; d: file_ptr; e: bfd_size_type):bfd_boolean;cdecl;
+    _bfd_set_section_contents: function(a: PBFD; b: PSec; c: pointer; d: file_ptr; e: bfd_size_type):bfd_boolean;cdecl; 
 
     (* Routines used by the linker.  *)
 
-    _bfd_sizeof_headers: function(a: PBFD ; b: bfd_boolean):integer;cdecl;
-    _bfd_get_relocated_section_contents: function(a: PBFD ; b: Pbfd_link_info; c: Pbfd_link_order; data: Pbfd_byte; relocateable: bfd_boolean; ce: PPsymbol_cache_entry):Pbfd_byte;cdecl;
+    _bfd_sizeof_headers: function(a: PBFD ; b: bfd_boolean):integer;cdecl; 
+    _bfd_get_relocated_section_contents: function(a: PBFD ; b: Pbfd_link_info; c: Pbfd_link_order; data: Pbfd_byte; relocateable: bfd_boolean; ce: PPsymbol_cache_entry):Pbfd_byte;cdecl; 
 
-    _bfd_relax_section: function(a: PBFD ; b: Psec; c: Pbfd_link_info; again: Pboolean):bfd_boolean;cdecl;
+    _bfd_relax_section: function(a: PBFD ; b: Psec; c: Pbfd_link_info; again: Pboolean):bfd_boolean;cdecl; 
 
     (* Create a hash table for the linker.  Different backends store
        different information in this table.  *)
-    _bfd_link_hash_table_create: function( a: PBFD  ):Pbfd_link_hash_table;cdecl;
+    _bfd_link_hash_table_create: function( a: PBFD  ):Pbfd_link_hash_table;cdecl; 
 
     (* Add symbols from this object file into the hash table.  *)
-    _bfd_link_add_symbols: function(a: PBFD ; b: Pbfd_link_info):bfd_boolean;cdecl;
+    _bfd_link_add_symbols: function(a: PBFD ; b: Pbfd_link_info):bfd_boolean;cdecl; 
 
     (* Do a link based on the link_order structures attached to each
        section of the BFD.  *)
-    _bfd_final_link: function(a: PBFD; b: Pbfd_link_info):bfd_boolean;cdecl;
+    _bfd_final_link: function(a: PBFD; b: Pbfd_link_info):bfd_boolean;cdecl; 
 
     (* Should this section be split up into smaller pieces during linking.  *)
-    _bfd_link_split_section: function(a: PBFD; b: Psec):bfd_boolean;cdecl;
+    _bfd_link_split_section: function(a: PBFD; b: Psec):bfd_boolean;cdecl; 
 
     (* Remove sections that are not referenced from the output.  *)
-    _bfd_gc_sections: function(a: PBFD ; b: Pbfd_link_info):bfd_boolean;cdecl;
+    _bfd_gc_sections: function(a: PBFD ; b: Pbfd_link_info):bfd_boolean;cdecl; 
 
     (* Routines to handle dynamic symbols and relocs.  *)
 
     (* Get the amount of memory required to hold the dynamic symbols. *)
-    _bfd_get_dynamic_symtab_upper_bound: function(a: PBFD  ):LongInt;cdecl;
+    _bfd_get_dynamic_symtab_upper_bound: function(a: PBFD  ):LongInt;cdecl; 
     (* Read in the dynamic symbols.  *)
-    _bfd_canonicalize_dynamic_symtab: function(a: PBFD ; b: PPsymbol_cache_entry):LongInt;cdecl;
+    _bfd_canonicalize_dynamic_symtab: function(a: PBFD ; b: PPsymbol_cache_entry):LongInt;cdecl; 
     (* Get the amount of memory required to hold the dynamic relocs.  *)
-    _bfd_get_dynamic_reloc_upper_bound: function(a: PBFD  ):LongInt;cdecl;
+    _bfd_get_dynamic_reloc_upper_bound: function(a: PBFD  ):LongInt;cdecl; 
     (* Read in the dynamic relocs.  *)
-    _bfd_canonicalize_dynamic_reloc: function(a: PBFD ; b: PParelent; c: PPsymbol_cache_entry):LongInt;cdecl;
+    _bfd_canonicalize_dynamic_reloc: function(a: PBFD ; b: PParelent; c: PPsymbol_cache_entry):LongInt;cdecl; 
 
     (* Opposite endian version of this target.  *)
     alternative_target: Pbfd_target;
@@ -1808,7 +1809,7 @@ is in practice already 0 *)
                                 data: pointer;
                                 input_section: Pasection;
                                 output_bfd: PBFD;
-                                error_message: ppchar):  bfd_reloc_status;cdecl;
+                                error_message: ppchar):  bfd_reloc_status;cdecl; 
 
          (* The textual name of the relocation type. *)
     name: pchar;
@@ -1867,8 +1868,8 @@ is in practice already 0 *)
     (* True if this is the default machine for the architecture.  *)
     the_default: bfd_boolean;
 
-    compatible: function(a: Pbfd_arch_info; b: Pbfd_arch_info):Pbfd_arch_info;cdecl;
-    scan: function(a: Pbfd_arch_info; b: pchar): bfd_boolean;cdecl;
+    compatible: function(a: Pbfd_arch_info; b: Pbfd_arch_info):Pbfd_arch_info;cdecl; 
+    scan: function(a: Pbfd_arch_info; b: pchar): bfd_boolean;cdecl; 
 
     next: Pbfd_arch_info;
   end; { bfd_arch_info }
@@ -2315,12 +2316,12 @@ const
 (* Direct I/O routines, for programs which know more about the object
    file than BFD does.  Use higher level routines if possible.  *)
 
-function bfd_read  (var data; size: bfd_size_type; nitems: bfd_size_type; abfd: PBFD): bfd_size_type;cdecl;
-function bfd_write (const data; size: bfd_size_type; nitems: bfd_size_type; abfd: PBFD): bfd_size_type;cdecl;
-function bfd_seek  (abfd: PBFD; fp: file_ptr; direction: integer): integer;cdecl;
-function bfd_tell  (abfd: PBFD): LongInt;cdecl;
-function bfd_flush (abfd: PBFD): integer;cdecl;
-function bfd_stat  (abfd: PBFD; a: Pstat): integer;cdecl;
+function bfd_read  (var data; size: bfd_size_type; nitems: bfd_size_type; abfd: PBFD): bfd_size_type;cdecl; external BFD_LIB_NAME;
+function bfd_write (const data; size: bfd_size_type; nitems: bfd_size_type; abfd: PBFD): bfd_size_type;cdecl; external BFD_LIB_NAME;
+function bfd_seek  (abfd: PBFD; fp: file_ptr; direction: integer): integer;cdecl; external BFD_LIB_NAME;
+function bfd_tell  (abfd: PBFD): LongInt;cdecl; external BFD_LIB_NAME;
+function bfd_flush (abfd: PBFD): integer;cdecl; external BFD_LIB_NAME;
+function bfd_stat  (abfd: PBFD; a: Pstat): integer;cdecl; external BFD_LIB_NAME;
 
 (* Cast from const pchar to pchar so that caller can assign to
    a pchar without a warning.  *)
@@ -2328,33 +2329,33 @@ function bfd_stat  (abfd: PBFD; a: Pstat): integer;cdecl;
 function bfd_get_filename(abfd: PBFD): pchar;
 
 function bfd_record_phdr(abfd: PBFD; a: LongWord; b: bfd_boolean; c: flagword; d: bfd_boolean; e: bfd_vma;
-           f: bfd_boolean; g: bfd_boolean; h: LongWord; i: PPsec):bfd_boolean;cdecl;
+           f: bfd_boolean; g: bfd_boolean; h: LongWord; i: PPsec):bfd_boolean;cdecl; external BFD_LIB_NAME;
 
 (* Byte swapping routines.  *)
 
-function bfd_getb64         (const val):bfd_vma;cdecl;
-function bfd_getl64         (const val):bfd_vma;cdecl;
-function bfd_getb_signed_64 (const val):bfd_signed_vma;cdecl;
-function bfd_getl_signed_64 (const val):bfd_signed_vma;cdecl;
-function bfd_getb32         (const val):bfd_vma;cdecl;
-function bfd_getl32         (const val):bfd_vma;cdecl;
-function bfd_getb_signed_32 (const val):bfd_signed_vma;cdecl;
-function bfd_getl_signed_32 (const val):bfd_signed_vma;cdecl;
-function bfd_getb16         (const val):bfd_vma;cdecl;
-function bfd_getl16         (const val):bfd_vma;cdecl;
-function bfd_getb_signed_16 (const val):bfd_signed_vma;cdecl;
-function bfd_getl_signed_16 (const val):bfd_signed_vma;cdecl;
-procedure bfd_putb64(vma: bfd_vma; var val);cdecl;
-procedure bfd_putl64(vma: bfd_vma; var val);cdecl;
-procedure bfd_putb32(vma: bfd_vma; var val);cdecl;
-procedure bfd_putl32(vma: bfd_vma; var val);cdecl;
-procedure bfd_putb16(vma: bfd_vma; var val);cdecl;
-procedure bfd_putl16(vma: bfd_vma; var val);cdecl;
+function bfd_getb64         (const val):bfd_vma;cdecl; external BFD_LIB_NAME;
+function bfd_getl64         (const val):bfd_vma;cdecl; external BFD_LIB_NAME;
+function bfd_getb_signed_64 (const val):bfd_signed_vma;cdecl; external BFD_LIB_NAME;
+function bfd_getl_signed_64 (const val):bfd_signed_vma;cdecl; external BFD_LIB_NAME;
+function bfd_getb32         (const val):bfd_vma;cdecl; external BFD_LIB_NAME;
+function bfd_getl32         (const val):bfd_vma;cdecl; external BFD_LIB_NAME;
+function bfd_getb_signed_32 (const val):bfd_signed_vma;cdecl; external BFD_LIB_NAME;
+function bfd_getl_signed_32 (const val):bfd_signed_vma;cdecl; external BFD_LIB_NAME;
+function bfd_getb16         (const val):bfd_vma;cdecl; external BFD_LIB_NAME;
+function bfd_getl16         (const val):bfd_vma;cdecl; external BFD_LIB_NAME;
+function bfd_getb_signed_16 (const val):bfd_signed_vma;cdecl; external BFD_LIB_NAME;
+function bfd_getl_signed_16 (const val):bfd_signed_vma;cdecl; external BFD_LIB_NAME;
+procedure bfd_putb64(vma: bfd_vma; var val);cdecl; external BFD_LIB_NAME;
+procedure bfd_putl64(vma: bfd_vma; var val);cdecl; external BFD_LIB_NAME;
+procedure bfd_putb32(vma: bfd_vma; var val);cdecl; external BFD_LIB_NAME;
+procedure bfd_putl32(vma: bfd_vma; var val);cdecl; external BFD_LIB_NAME;
+procedure bfd_putb16(vma: bfd_vma; var val);cdecl; external BFD_LIB_NAME;
+procedure bfd_putl16(vma: bfd_vma; var val);cdecl; external BFD_LIB_NAME;
 
 (* Byte swapping routines which take size and endiannes as arguments.  *)
 
-function  bfd_get_bits (a: Pbfd_byte; b:integer; c: bfd_boolean): bfd_vma;cdecl;
-procedure bfd_put_bits (a: bfd_vma; b:Pbfd_byte; c:integer; d:bfd_boolean);cdecl;
+function  bfd_get_bits (a: Pbfd_byte; b:integer; c: bfd_boolean): bfd_vma;cdecl; external BFD_LIB_NAME;
+procedure bfd_put_bits (a: bfd_vma; b:Pbfd_byte; c:integer; d:bfd_boolean);cdecl; external BFD_LIB_NAME;
 
 (* Externally visible ECOFF routines.  *)
 
@@ -2362,17 +2363,17 @@ type
   Pecoff_debug_info  = pointer;
   Pecoff_debug_swap  = pointer;
 
-function bfd_ecoff_get_gp_value(abfd: PBFD ):bfd_vma;cdecl;
-function bfd_ecoff_set_gp_value(abfd: PBFD; gp_value: bfd_vma):bfd_boolean ;cdecl;
-function bfd_ecoff_set_regmasks(abfd: PBFD; gprmask: LongWord; fprmask: LongWord;cprmask: PLongWord):bfd_boolean;cdecl;
-function bfd_ecoff_debug_init(output_bfd: PBFD; output_debug: Pecoff_debug_info; output_swap: Pecoff_debug_swap; li: Pbfd_link_info):pointer;cdecl;
-procedure bfd_ecoff_debug_free(handle: pointer; output_bfd: PBFD; output_debug: Pecoff_debug_info; output_swap: Pecoff_debug_swap;li: Pbfd_link_info);cdecl;
+function bfd_ecoff_get_gp_value(abfd: PBFD ):bfd_vma;cdecl; external BFD_LIB_NAME;
+function bfd_ecoff_set_gp_value(abfd: PBFD; gp_value: bfd_vma):bfd_boolean ;cdecl; external BFD_LIB_NAME;
+function bfd_ecoff_set_regmasks(abfd: PBFD; gprmask: LongWord; fprmask: LongWord;cprmask: PLongWord):bfd_boolean;cdecl; external BFD_LIB_NAME;
+function bfd_ecoff_debug_init(output_bfd: PBFD; output_debug: Pecoff_debug_info; output_swap: Pecoff_debug_swap; li: Pbfd_link_info):pointer;cdecl; external BFD_LIB_NAME;
+procedure bfd_ecoff_debug_free(handle: pointer; output_bfd: PBFD; output_debug: Pecoff_debug_info; output_swap: Pecoff_debug_swap;li: Pbfd_link_info);cdecl; external BFD_LIB_NAME;
 function bfd_ecoff_debug_accumulate(
            handle: pointer; output_bfd: PBFD; output_debug: Pecoff_debug_info;
            output_swap: Pecoff_debug_swap;
            input_bfd: PBFD; input_debug: Pecoff_debug_info;
            input_swap: Pecoff_debug_swap;
-           li: Pbfd_link_info):bfd_boolean ;cdecl;
+           li: Pbfd_link_info):bfd_boolean ;cdecl; external BFD_LIB_NAME;
 
 (*todo: function bfd_ecoff_debug_accumulate_other(
            pointer handle;
@@ -2381,7 +2382,7 @@ function bfd_ecoff_debug_accumulate(
            Pecoff_debug_swap output_swap;
            PBFD input_bfd;
            li: Pbfd_link_info
-           ):bfd_boolean ;cdecl;
+           ):bfd_boolean ;cdecl; external BFD_LIB_NAME;
 *)
 
 (*todo: function bfd_ecoff_debug_externals(
@@ -2393,7 +2394,7 @@ function bfd_ecoff_debug_accumulate(
                                 struct ecoff_extr * );
            void ( *set_index) (struct symbol_cache_entry *;
                               bfd_size_type)
-           ):bfd_boolean ;cdecl;
+           ):bfd_boolean ;cdecl; external BFD_LIB_NAME;
 *)
 
 (*todo: function bfd_ecoff_debug_one_external(
@@ -2402,14 +2403,14 @@ function bfd_ecoff_debug_accumulate(
            Pecoff_debug_swap swap,
            const ShortInt *name,
            struct ecoff_extr *esym
-           ):bfd_boolean ;cdecl;
+           ):bfd_boolean ;cdecl; external BFD_LIB_NAME;
 *)
 
 (*todo: function bfd_ecoff_debug_size(
            PBFD abfd,
            Pecoff_debug_info debug,
            Pecoff_debug_swap swap
-           ):bfd_size_type;cdecl;
+           ):bfd_size_type;cdecl; external BFD_LIB_NAME;
 *)
 
 (*todo: function bfd_ecoff_write_debug(
@@ -2417,7 +2418,7 @@ function bfd_ecoff_debug_accumulate(
            Pecoff_debug_info debug,
            Pecoff_debug_swap swap,
            file_ptr where
-           ):bfd_boolean;cdecl;
+           ):bfd_boolean;cdecl; external BFD_LIB_NAME;
 *)
 
 (*todo: function bfd_ecoff_write_accumulated_debug(
@@ -2426,7 +2427,7 @@ function bfd_ecoff_debug_accumulate(
            Pecoff_debug_info debug,
            Pecoff_debug_swap swa,
            struct bfd_link_info *info, file_ptr where)
-           ):bfd_boolean;cdecl;
+           ):bfd_boolean;cdecl; external BFD_LIB_NAME;
 *)
 
 (*todo: function bfd_mips_ecoff_create_embedded_relocs(
@@ -2435,26 +2436,26 @@ function bfd_ecoff_debug_accumulate(
            struct sec *,
            struct sec *,
            pchar*
-           ):bfd_boolean;cdecl;
+           ):bfd_boolean;cdecl; external BFD_LIB_NAME;
 *)
 
 (* Externally visible ELF routines.  *)
 
-//todo:function bfd_elf32_record_link_assignment(PBFD ; struct bfd_link_info *; const pchar; bfd_boolean):bfd_boolean;cdecl;
-//todo:function bfd_elf64_record_link_assignment(PBFD ; struct bfd_link_info *; const pchar; bfd_boolean):bfd_boolean;cdecl;
-//todo:function bfd_link_needed_list *bfd_elf_get_needed_list(PBFD ; struct bfd_link_info *):struct;cdecl;
-//todo:function bfd_elf_get_bfd_needed_list(PBFD ; struct bfd_link_needed_list **):bfd_boolean;cdecl;
-//todo:function bfd_elf32_size_dynamic_sections (PBFD ; const pchar; const pchar; bfd_boolean; const pchar;      const pchar const *; struct bfd_link_info *; struct sec **;     struct bfd_elf_version_tree *):bfd_boolean;cdecl;
-//todo:function bfd_elf64_size_dynamic_sections (PBFD ; const pchar; const pchar; bfd_boolean; const pchar;      const pchar const *; struct bfd_link_info *; struct sec **;     struct bfd_elf_version_tree *):bfd_boolean;cdecl;
-//todo:function bfd_elf_set_dt_needed_name(PBFD ; const pchar):void;cdecl;
-//todo:function bfd_elf_set_dt_needed_soname(PBFD ; const pchar):void;cdecl;
-//todo:function const ShortInt *bfd_elf_get_dt_soname (PBFD );cdecl;
-//todo:function struct bfd_link_needed_list *bfd_elf_get_runpath_list (PBFD ; struct bfd_link_info *);cdecl;
+//todo:function bfd_elf32_record_link_assignment(PBFD ; struct bfd_link_info *; const pchar; bfd_boolean):bfd_boolean;cdecl; external BFD_LIB_NAME;
+//todo:function bfd_elf64_record_link_assignment(PBFD ; struct bfd_link_info *; const pchar; bfd_boolean):bfd_boolean;cdecl; external BFD_LIB_NAME;
+//todo:function bfd_link_needed_list *bfd_elf_get_needed_list(PBFD ; struct bfd_link_info *):struct;cdecl; external BFD_LIB_NAME;
+//todo:function bfd_elf_get_bfd_needed_list(PBFD ; struct bfd_link_needed_list **):bfd_boolean;cdecl; external BFD_LIB_NAME;
+//todo:function bfd_elf32_size_dynamic_sections (PBFD ; const pchar; const pchar; bfd_boolean; const pchar;      const pchar const *; struct bfd_link_info *; struct sec **;     struct bfd_elf_version_tree *):bfd_boolean;cdecl; external BFD_LIB_NAME;
+//todo:function bfd_elf64_size_dynamic_sections (PBFD ; const pchar; const pchar; bfd_boolean; const pchar;      const pchar const *; struct bfd_link_info *; struct sec **;     struct bfd_elf_version_tree *):bfd_boolean;cdecl; external BFD_LIB_NAME;
+//todo:function bfd_elf_set_dt_needed_name(PBFD ; const pchar):void;cdecl; external BFD_LIB_NAME;
+//todo:function bfd_elf_set_dt_needed_soname(PBFD ; const pchar):void;cdecl; external BFD_LIB_NAME;
+//todo:function const ShortInt *bfd_elf_get_dt_soname (PBFD );cdecl; external BFD_LIB_NAME;
+//todo:function struct bfd_link_needed_list *bfd_elf_get_runpath_list (PBFD ; struct bfd_link_info *);cdecl; external BFD_LIB_NAME;
 
 (* Return an upper bound on the number of bytes required to store a
    copy of ABFD's program header table entries.  Return -1 if an error
    occurs; bfd_get_error will return an appropriate code.  *)
-//todo:function bfd_get_elf_phdr_upper_bound(PBFD abfd):LongInt;cdecl;
+//todo:function bfd_get_elf_phdr_upper_bound(PBFD abfd):LongInt;cdecl; external BFD_LIB_NAME;
 
 (* Copy ABFD's program header table entries to *PHDRS.  The entries
    will be stored as an array of Elf_Internal_Phdr structures, as
@@ -2463,77 +2464,77 @@ function bfd_ecoff_debug_accumulate(
 
    Return the number of program header table entries read, or -1 if an
    error occurs; bfd_get_error will return an appropriate code.  *)
-//todo:function bfd_get_elf_phdrs(PBFD abfd, void *phdrs):integer;cdecl;
+//todo:function bfd_get_elf_phdrs(PBFD abfd, void *phdrs):integer;cdecl; external BFD_LIB_NAME;
 
 (* Return the arch_size field of an elf bfd, or -1 if not elf.  *)
-//todo:function bfd_get_arch_size(PBFD  ):integer;cdecl;
+//todo:function bfd_get_arch_size(PBFD  ):integer;cdecl; external BFD_LIB_NAME;
 
 (* Return true if address "naturally" sign extends, or -1 if not elf.  *)
-//todo:function bfd_get_sign_extend_vma(PBFD  ):integer;cdecl;
+//todo:function bfd_get_sign_extend_vma(PBFD  ):integer;cdecl; external BFD_LIB_NAME;
 
-//todo:function bfd_m68k_elf32_create_embedded_relocs(PBFD , struct bfd_link_info *, struct sec *, struct sec *,           pchar*):bfd_boolean;cdecl;
+//todo:function bfd_m68k_elf32_create_embedded_relocs(PBFD , struct bfd_link_info *, struct sec *, struct sec *,           pchar*):bfd_boolean;cdecl; external BFD_LIB_NAME;
 
 (* SunOS shared library support routines for the linker.  *)
 
-//todo:function *bfd_sunos_get_needed_list(PBFD , struct bfd_link_info *):bfd_link_needed_list;cdecl;
-//todo:function bfd_sunos_record_link_assignment(PBFD , struct bfd_link_info *, const pchar):bfd_boolean;cdecl;
-//todo:function bfd_sunos_size_dynamic_sections (PBFD , struct bfd_link_info *, struct sec **, struct sec **, struct sec **):bfd_boolean;cdecl;
+//todo:function *bfd_sunos_get_needed_list(PBFD , struct bfd_link_info *):bfd_link_needed_list;cdecl; external BFD_LIB_NAME;
+//todo:function bfd_sunos_record_link_assignment(PBFD , struct bfd_link_info *, const pchar):bfd_boolean;cdecl; external BFD_LIB_NAME;
+//todo:function bfd_sunos_size_dynamic_sections (PBFD , struct bfd_link_info *, struct sec **, struct sec **, struct sec **):bfd_boolean;cdecl; external BFD_LIB_NAME;
 
 (* Linux shared library support routines for the linker.  *)
 
-//todo:function bfd_i386linux_size_dynamic_sections(PBFD , struct bfd_link_info *):bfd_boolean;cdecl;
-//todo:function bfd_m68klinux_size_dynamic_sections(PBFD , struct bfd_link_info *):bfd_boolean;cdecl;
-//todo:function bfd_sparclinux_size_dynamic_sections(PBFD , struct bfd_link_info *):bfd_boolean;cdecl;
+//todo:function bfd_i386linux_size_dynamic_sections(PBFD , struct bfd_link_info *):bfd_boolean;cdecl; external BFD_LIB_NAME;
+//todo:function bfd_m68klinux_size_dynamic_sections(PBFD , struct bfd_link_info *):bfd_boolean;cdecl; external BFD_LIB_NAME;
+//todo:function bfd_sparclinux_size_dynamic_sections(PBFD , struct bfd_link_info *):bfd_boolean;cdecl; external BFD_LIB_NAME;
 
-//todo:function bfd_init_window(bfd_window *):void;cdecl;
-//todo:function bfd_free_window(bfd_window *):void;cdecl;
-//todo:function bfd_get_file_window(PBFD , file_ptr, bfd_size_type, bfd_window *, bfd_boolean):bfd_boolean;cdecl;
+//todo:function bfd_init_window(bfd_window *):void;cdecl; external BFD_LIB_NAME;
+//todo:function bfd_free_window(bfd_window *):void;cdecl; external BFD_LIB_NAME;
+//todo:function bfd_get_file_window(PBFD , file_ptr, bfd_size_type, bfd_window *, bfd_boolean):bfd_boolean;cdecl; external BFD_LIB_NAME;
 
 (* XCOFF support routines for the linker.  *)
-//todo:function bfd_boolean bfd_xcoff_link_record_set (PBFD , struct bfd_link_info *, struct bfd_link_hash_entry *,        bfd_size_type));cdecl;
-//todo:function bfd_boolean bfd_xcoff_import_symbol (PBFD , struct bfd_link_info *, struct bfd_link_hash_entry *,          bfd_vma, const pchar, const pchar, const pchar));cdecl;
-//todo:function bfd_boolean bfd_xcoff_export_symbol  (PBFD , struct bfd_link_info *, struct bfd_link_hash_entry *,         bfd_boolean));cdecl;
-//todo:function bfd_boolean bfd_xcoff_link_count_reloc  (PBFD , struct bfd_link_info *, const pchar));cdecl;
-//todo:function bfd_boolean bfd_xcoff_record_link_assignment  (PBFD , struct bfd_link_info *, const pchar));cdecl;
-//todo:function bfd_boolean bfd_xcoff_size_dynamic_sections  (PBFD , struct bfd_link_info *, const pchar, const pchar,     LongWord, LongWord, LongWord, bfd_boolean,      integer, bfd_boolean, bfd_boolean, struct sec **));cdecl;
+//todo:function bfd_boolean bfd_xcoff_link_record_set (PBFD , struct bfd_link_info *, struct bfd_link_hash_entry *,        bfd_size_type));cdecl; external BFD_LIB_NAME;
+//todo:function bfd_boolean bfd_xcoff_import_symbol (PBFD , struct bfd_link_info *, struct bfd_link_hash_entry *,          bfd_vma, const pchar, const pchar, const pchar));cdecl; external BFD_LIB_NAME;
+//todo:function bfd_boolean bfd_xcoff_export_symbol  (PBFD , struct bfd_link_info *, struct bfd_link_hash_entry *,         bfd_boolean));cdecl; external BFD_LIB_NAME;
+//todo:function bfd_boolean bfd_xcoff_link_count_reloc  (PBFD , struct bfd_link_info *, const pchar));cdecl; external BFD_LIB_NAME;
+//todo:function bfd_boolean bfd_xcoff_record_link_assignment  (PBFD , struct bfd_link_info *, const pchar));cdecl; external BFD_LIB_NAME;
+//todo:function bfd_boolean bfd_xcoff_size_dynamic_sections  (PBFD , struct bfd_link_info *, const pchar, const pchar,     LongWord, LongWord, LongWord, bfd_boolean,      integer, bfd_boolean, bfd_boolean, struct sec **));cdecl; external BFD_LIB_NAME;
 
 (* Externally visible COFF routines.  *)
 
-//todo:function bfd_boolean bfd_coff_get_syment (PBFD , struct symbol_cache_entry *, struct internal_syment *));cdecl;
-//todo:function bfd_boolean bfd_coff_get_auxent (PBFD , struct symbol_cache_entry *, integer, union internal_auxent *));cdecl;
-//todo:function bfd_boolean bfd_coff_set_symbol_class (PBFD , struct symbol_cache_entry *, LongWord));cdecl;
-//todo:function bfd_boolean bfd_m68k_coff_create_embedded_relocs (PBFD , struct bfd_link_info *, struct sec *, struct sec *,       pchar*));cdecl;
+//todo:function bfd_boolean bfd_coff_get_syment (PBFD , struct symbol_cache_entry *, struct internal_syment *));cdecl; external BFD_LIB_NAME;
+//todo:function bfd_boolean bfd_coff_get_auxent (PBFD , struct symbol_cache_entry *, integer, union internal_auxent *));cdecl; external BFD_LIB_NAME;
+//todo:function bfd_boolean bfd_coff_set_symbol_class (PBFD , struct symbol_cache_entry *, LongWord));cdecl; external BFD_LIB_NAME;
+//todo:function bfd_boolean bfd_m68k_coff_create_embedded_relocs (PBFD , struct bfd_link_info *, struct sec *, struct sec *,       pchar*));cdecl; external BFD_LIB_NAME;
 
 (* ARM Interworking support.  Called from linker.  *)
-//todo:function bfd_boolean bfd_arm_allocate_interworking_sections (struct bfd_link_info *));cdecl;
-//todo:function bfd_boolean bfd_arm_process_before_allocation (PBFD , struct bfd_link_info *, integer));cdecl;
-//todo:function bfd_boolean bfd_arm_get_bfd_for_interworking  (PBFD , struct bfd_link_info *));cdecl;
+//todo:function bfd_boolean bfd_arm_allocate_interworking_sections (struct bfd_link_info *));cdecl; external BFD_LIB_NAME;
+//todo:function bfd_boolean bfd_arm_process_before_allocation (PBFD , struct bfd_link_info *, integer));cdecl; external BFD_LIB_NAME;
+//todo:function bfd_boolean bfd_arm_get_bfd_for_interworking  (PBFD , struct bfd_link_info *));cdecl; external BFD_LIB_NAME;
 
 (* PE ARM Interworking support.  Called from linker.  *)
-//todo:function bfd_boolean bfd_arm_pe_allocate_interworking_sections  (struct bfd_link_info *));cdecl;
-//todo:function bfd_boolean bfd_arm_pe_process_before_allocation (PBFD , struct bfd_link_info *, integer));cdecl;
-//todo:function bfd_boolean bfd_arm_pe_get_bfd_for_interworking   (PBFD , struct bfd_link_info *));cdecl;
+//todo:function bfd_boolean bfd_arm_pe_allocate_interworking_sections  (struct bfd_link_info *));cdecl; external BFD_LIB_NAME;
+//todo:function bfd_boolean bfd_arm_pe_process_before_allocation (PBFD , struct bfd_link_info *, integer));cdecl; external BFD_LIB_NAME;
+//todo:function bfd_boolean bfd_arm_pe_get_bfd_for_interworking   (PBFD , struct bfd_link_info *));cdecl; external BFD_LIB_NAME;
 
 (* ELF ARM Interworking support.  Called from linker.  *)
-//todo:function bfd_boolean bfd_elf32_arm_allocate_interworking_sections  (struct bfd_link_info *));cdecl;
-//todo:function bfd_boolean bfd_elf32_arm_process_before_allocation  (PBFD , struct bfd_link_info *, integer));cdecl;
-//todo:function bfd_boolean bfd_elf32_arm_get_bfd_for_interworking (PBFD , struct bfd_link_info *));cdecl;
+//todo:function bfd_boolean bfd_elf32_arm_allocate_interworking_sections  (struct bfd_link_info *));cdecl; external BFD_LIB_NAME;
+//todo:function bfd_boolean bfd_elf32_arm_process_before_allocation  (PBFD , struct bfd_link_info *, integer));cdecl; external BFD_LIB_NAME;
+//todo:function bfd_boolean bfd_elf32_arm_get_bfd_for_interworking (PBFD , struct bfd_link_info *));cdecl; external BFD_LIB_NAME;
 
 (* TI COFF load page support.  *)
-//todo:function void bfd_ticoff_set_section_load_page (struct sec *, integer));cdecl;
-//todo:function integer bfd_ticoff_get_section_load_page  (struct sec *));cdecl;
+//todo:function void bfd_ticoff_set_section_load_page (struct sec *, integer));cdecl; external BFD_LIB_NAME;
+//todo:function integer bfd_ticoff_get_section_load_page  (struct sec *));cdecl; external BFD_LIB_NAME;
 
 (* And more from the source.  *)
-procedure bfd_init;cdecl;
-function bfd_openr( filename: pchar ;  target: pchar ):PBFD;cdecl;
-function bfd_fdopenr( filename: pchar ;  target: pchar ; fd: integer):PBFD;cdecl;
-function bfd_openstreamr(a: pchar; b: pchar; c: pointer):PBFD;cdecl;
-function bfd_openw( filename: pchar ;  target: pchar):PBFD;cdecl;
-function bfd_close(abfd: PBFD):bfd_boolean;cdecl;
-function bfd_close_all_done(abfd: PBFD  ):bfd_boolean;cdecl;
-function bfd_create( filename: pchar ; templ: PBFD):PBFD;cdecl;
-function bfd_make_writable(abfd: PBFD ):bfd_boolean;cdecl;
-function bfd_make_readable(abfd: PBFD ):bfd_boolean;cdecl;
+procedure bfd_init;cdecl; external BFD_LIB_NAME;
+function bfd_openr( filename: pchar ;  target: pchar ):PBFD;cdecl; external BFD_LIB_NAME;
+function bfd_fdopenr( filename: pchar ;  target: pchar ; fd: integer):PBFD;cdecl; external BFD_LIB_NAME;
+function bfd_openstreamr(a: pchar; b: pchar; c: pointer):PBFD;cdecl; external BFD_LIB_NAME;
+function bfd_openw( filename: pchar ;  target: pchar):PBFD;cdecl; external BFD_LIB_NAME;
+function bfd_close(abfd: PBFD):bfd_boolean;cdecl; external BFD_LIB_NAME;
+function bfd_close_all_done(abfd: PBFD  ):bfd_boolean;cdecl; external BFD_LIB_NAME;
+function bfd_create( filename: pchar ; templ: PBFD):PBFD;cdecl; external BFD_LIB_NAME;
+function bfd_make_writable(abfd: PBFD ):bfd_boolean;cdecl; external BFD_LIB_NAME;
+function bfd_make_readable(abfd: PBFD ):bfd_boolean;cdecl; external BFD_LIB_NAME;
 
 (* General purpose part of a symbol X;
    target specific parts are in libcoff.h, libaout.h, etc.  *)
@@ -2683,15 +2684,15 @@ const
 //todo:bfd_boolean bfd_set_section_flags (PBFD abfd, asection *sec, flagword flags));
 
 type
-  bfd_map_over_sections_proc = procedure( abfd: PBFD; sect: Pasection; obj: pointer ); cdecl;
+  bfd_map_over_sections_proc = procedure( abfd: PBFD; sect: Pasection; obj: pointer ); cdecl; 
 
-procedure bfd_map_over_sections( abfd: PBFD; func: bfd_map_over_sections_proc; obj: pointer ); cdecl;
+procedure bfd_map_over_sections( abfd: PBFD; func: bfd_map_over_sections_proc; obj: pointer ); cdecl; external BFD_LIB_NAME;
 
 //todo:bfd_boolean bfd_set_section_size (PBFD abfd, asection *sec, bfd_size_type val));
 
 //todo:bfd_boolean bfd_set_section_contents (PBFD abfd, asection *section, pointer data, file_ptr offset,  bfd_size_type count));
 
-function bfd_get_section_contents(abfd: PBFD; section: Pasection; location: pointer; offset: file_ptr; count: bfd_size_type): bfd_boolean; cdecl;
+function bfd_get_section_contents(abfd: PBFD; section: Pasection; location: pointer; offset: file_ptr; count: bfd_size_type): bfd_boolean; cdecl; external BFD_LIB_NAME;
 
 //todo:bfd_boolean bfd_copy_private_section_data (PBFD ibfd, asection *isec, PBFD obfd, asection *osec));
 
@@ -2709,9 +2710,9 @@ function bfd_get_section_contents(abfd: PBFD; section: Pasection; location: poin
 
 //todo:void bfd_set_arch_info (PBFD abfd, const bfd_arch_info_type *arg));
 
-function bfd_get_arch( abfd: PBFD ): bfd_architecture; cdecl;
+function bfd_get_arch( abfd: PBFD ): bfd_architecture; cdecl; external BFD_LIB_NAME;
 
-function bfd_get_mach( abfd: PBFD ): LongWord; cdecl;
+function bfd_get_mach( abfd: PBFD ): LongWord; cdecl; external BFD_LIB_NAME;
 
 //todo:LongWord bfd_arch_bits_per_byte (PBFD abfd));
 
@@ -2721,7 +2722,7 @@ function bfd_get_mach( abfd: PBFD ): LongWord; cdecl;
 
 //todo:const bfd_arch_info_type * bfd_lookup_arch  (enum bfd_architecture arch, LongWord machine));
 
-function bfd_printable_arch_mach(arch: bfd_architecture; machine: LongWord): pchar;
+function bfd_printable_arch_mach(arch: bfd_architecture; machine: LongWord): pchar; cdecl; external BFD_LIB_NAME;
 
 //todo:LongWord bfd_octets_per_byte (PBFD abfd));
 //todo:LongWord bfd_arch_mach_octets_per_byte (enum bfd_architecture arch, LongWord machine));
@@ -2778,18 +2779,18 @@ function bfd_printable_arch_mach(arch: bfd_architecture; machine: LongWord): pch
 //todo:#define bfd_copy_private_symbol_data(ibfd, isymbol, obfd, osymbol)  BFD_SEND (obfd, _bfd_copy_private_symbol_data, (ibfd, isymbol, obfd, osymbol))
 
 
-function bfd_get_error: bfd_error; cdecl;
+function bfd_get_error: bfd_error; cdecl; external BFD_LIB_NAME;
 
 //todo:void bfd_set_error  (bfd_error error_tag));
 
-function bfd_errmsg( error_tag: bfd_error ): pchar; cdecl;
+function bfd_errmsg( error_tag: bfd_error ): pchar; cdecl; external BFD_LIB_NAME;
 
 //todo:void bfd_perror  ( ShortInt *message));
 
 type
   bfd_error_handler_type = procedure( a: pchar { VARARGS! } ); cdecl;
 
-function bfd_set_error_handler( handler: bfd_error_handler_type ):bfd_error_handler_type; cdecl;
+function bfd_set_error_handler( handler: bfd_error_handler_type ):bfd_error_handler_type; cdecl; external BFD_LIB_NAME;
 
 //todo:void bfd_set_error_program_name  (const pchar));
 
@@ -2868,26 +2869,26 @@ function bfd_set_error_handler( handler: bfd_error_handler_type ):bfd_error_hand
 
 //todo:#define bfd_canonicalize_dynamic_reloc(abfd, arels, asyms) BFD_SEND (abfd, _bfd_canonicalize_dynamic_reloc, (abfd, arels, asyms))
 
-//todo:function Pbfd_byte bfd_get_relocated_section_contents (PBFD , struct bfd_link_info *, struct bfd_link_order *, Pbfd_byte , bfd_boolean, asymbol **));cdecl;
-//todo:symindex bfd_get_next_mapent (PBFD abfd, symindex previous, carsym **sym));cdecl;
-//todo:bfd_boolean bfd_set_archive_head (PBFD output, PBFD new_head));cdecl;
-//todo:PBFD bfd_openr_next_archived_file (PBFD archive, PBFD previous));cdecl;
-//todo:pchar bfd_core_file_failing_command (PBFD abfd));cdecl;
-//todo:integer bfd_core_file_failing_signal (PBFD abfd));cdecl;
-//todo:bfd_boolean core_file_matches_executable_p (PBFD core_bfd, PBFD exec_bfd));cdecl;
+//todo:function Pbfd_byte bfd_get_relocated_section_contents (PBFD , struct bfd_link_info *, struct bfd_link_order *, Pbfd_byte , bfd_boolean, asymbol **));cdecl; external BFD_LIB_NAME;
+//todo:symindex bfd_get_next_mapent (PBFD abfd, symindex previous, carsym **sym));cdecl; external BFD_LIB_NAME;
+//todo:bfd_boolean bfd_set_archive_head (PBFD output, PBFD new_head));cdecl; external BFD_LIB_NAME;
+//todo:PBFD bfd_openr_next_archived_file (PBFD archive, PBFD previous));cdecl; external BFD_LIB_NAME;
+//todo:pchar bfd_core_file_failing_command (PBFD abfd));cdecl; external BFD_LIB_NAME;
+//todo:integer bfd_core_file_failing_signal (PBFD abfd));cdecl; external BFD_LIB_NAME;
+//todo:bfd_boolean core_file_matches_executable_p (PBFD core_bfd, PBFD exec_bfd));cdecl; external BFD_LIB_NAME;
 
 //todo:#define BFD_SEND(bfd, message, arglist)    (( *((bfd)->xvec->message)) arglist)
 //todo:#define BFD_SEND_FMT(bfd, message, arglist)(((bfd)->xvec->message[(integer) ((bfd)->format)]) arglist)
 
-//todo:bfd_boolean bfd_set_default_target  (const ShortInt *name));cdecl;
-//todo:const bfd_target * bfd_find_target ( ShortInt *target_name, PBFD abfd));cdecl;
-//todo:const pchar* bfd_target_list (void));cdecl;
-//todo:const bfd_target * bfd_search_for_target  (integer ( * search_func) (const bfd_target *, void * ), void * ));cdecl;
+//todo:bfd_boolean bfd_set_default_target  (const ShortInt *name));cdecl; external BFD_LIB_NAME;
+//todo:const bfd_target * bfd_find_target ( ShortInt *target_name, PBFD abfd));cdecl; external BFD_LIB_NAME;
+//todo:const pchar* bfd_target_list (void));cdecl; external BFD_LIB_NAME;
+//todo:const bfd_target * bfd_search_for_target  (integer ( * search_func) (const bfd_target *, void * ), void * ));cdecl; external BFD_LIB_NAME;
 
-function bfd_check_format(abfd: PBFD; format: bfd_format): bfd_boolean;cdecl;
-function bfd_check_format_matches(abfd: PBFD; format: bfd_format; matching: pppchar): bfd_boolean;cdecl;
-//todo:bfd_boolean bfd_set_format (PBFD abfd, bfd_format format));cdecl;
-//todo:pchar bfd_format_string (bfd_format format));cdecl;
+function bfd_check_format(abfd: PBFD; format: bfd_format): bfd_boolean;cdecl; external BFD_LIB_NAME;
+function bfd_check_format_matches(abfd: PBFD; format: bfd_format; matching: pppchar): bfd_boolean;cdecl; external BFD_LIB_NAME;
+//todo:bfd_boolean bfd_set_format (PBFD abfd, bfd_format format));cdecl; external BFD_LIB_NAME;
+//todo:pchar bfd_format_string (bfd_format format));cdecl; external BFD_LIB_NAME;
 
 (* Values that may appear in the flags field of a BFD.  These also
    appear in the object_flags field of the bfd_target structure, where
@@ -2949,36 +2950,36 @@ const
 
 (* Get the name of a stabs type code.  *)
 
-function bfd_get_stab_name(a:integer):pchar;cdecl;
+function bfd_get_stab_name(a:integer):pchar;cdecl; external BFD_LIB_NAME;
 
 (* Initialize a hash table.  *)
-//todo:function bfd_boolean bfd_hash_table_init  (struct bfd_hash_table *,   struct bfd_hash_entry *( * ) (struct bfd_hash_entry *, struct bfd_hash_table *, const pchar)));cdecl;
+//todo:function bfd_boolean bfd_hash_table_init  (struct bfd_hash_table *,   struct bfd_hash_entry *( * ) (struct bfd_hash_entry *, struct bfd_hash_table *, const pchar)));cdecl; external BFD_LIB_NAME;
 
 (* Initialize a hash table specifying a size.  *)
-//todo:function bfd_boolean bfd_hash_table_init_n (struct bfd_hash_table *, struct bfd_hash_entry *( * ) (struct bfd_hash_entry *,  struct bfd_hash_table *, const pchar),  LongWord size));cdecl;
+//todo:function bfd_boolean bfd_hash_table_init_n (struct bfd_hash_table *, struct bfd_hash_entry *( * ) (struct bfd_hash_entry *,  struct bfd_hash_table *, const pchar),  LongWord size));cdecl; external BFD_LIB_NAME;
 
 (* Free up a hash table.  *)
-//todo:function void bfd_hash_table_free (struct bfd_hash_table *));cdecl;
+//todo:function void bfd_hash_table_free (struct bfd_hash_table *));cdecl; external BFD_LIB_NAME;
 
 (* Look up a string in a hash table.  If CREATE is true, a new entry
    will be created for this string if one does not already exist.  The
    COPY argument must be true if this routine should copy the string
    into newly allocated memory when adding an entry.  *)
-//todo:function struct bfd_hash_entry *bfd_hash_lookup (struct bfd_hash_table *, const pchar, bfd_boolean create,  bfd_boolean copy));cdecl;
+//todo:function struct bfd_hash_entry *bfd_hash_lookup (struct bfd_hash_table *, const pchar, bfd_boolean create,  bfd_boolean copy));cdecl; external BFD_LIB_NAME;
 
 (* Replace an entry in a hash table.  *)
-//todo:function void bfd_hash_replace (struct bfd_hash_table *, struct bfd_hash_entry *old, struct bfd_hash_entry *nw));cdecl;
+//todo:function void bfd_hash_replace (struct bfd_hash_table *, struct bfd_hash_entry *old, struct bfd_hash_entry *nw));cdecl; external BFD_LIB_NAME;
 
 (* Base method for creating a hash table entry.  *)
-//todo:function struct bfd_hash_entry *bfd_hash_newfunc (struct bfd_hash_entry *, struct bfd_hash_table *,  const pchar));cdecl;
+//todo:function struct bfd_hash_entry *bfd_hash_newfunc (struct bfd_hash_entry *, struct bfd_hash_table *,  const pchar));cdecl; external BFD_LIB_NAME;
 
 (* Grab some space for a hash table entry.  *)
-//todo:function pointer bfd_hash_allocate (struct bfd_hash_table *, LongWord));cdecl;
+//todo:function pointer bfd_hash_allocate (struct bfd_hash_table *, LongWord));cdecl; external BFD_LIB_NAME;
 
 (* Traverse a hash table in a random order, calling a function on each
    element.  If the function returns false, the traversal stops.  The
    INFO argument is passed to the function.  *)
-//todo:function void bfd_hash_traverse (struct bfd_hash_table *,  bfd_boolean ( * ) (struct bfd_hash_entry *, pointer), pointer info));cdecl;
+//todo:function void bfd_hash_traverse (struct bfd_hash_table *,  bfd_boolean ( * ) (struct bfd_hash_entry *, pointer), pointer info));cdecl; external BFD_LIB_NAME;
 
 (* Print a bfd_vma x on stream s.  *)
 //todo:#define fprintf_vma(s,x) fprintf (s, "%08lx", x)
@@ -2988,71 +2989,6 @@ function bfd_get_stab_name(a:integer):pchar;cdecl;
 
 implementation
 
-const
-  LIB_NAME = 'libbfd-'+BFD_VERSION+'.dll';
-
-function bfd_read;  external LIB_NAME;
-function bfd_write; external LIB_NAME;
-function bfd_seek;  external LIB_NAME;
-function bfd_tell;  external LIB_NAME;
-function bfd_flush; external LIB_NAME;
-function bfd_stat;  external LIB_NAME;
-
-function bfd_record_phdr; external LIB_NAME;
-function bfd_getb64; external LIB_NAME;
-function bfd_getl64; external LIB_NAME;
-function bfd_getb_signed_64; external LIB_NAME;
-function bfd_getl_signed_64; external LIB_NAME;
-function bfd_getb32; external LIB_NAME;
-function bfd_getl32; external LIB_NAME;
-function bfd_getb_signed_32; external LIB_NAME;
-function bfd_getl_signed_32; external LIB_NAME;
-function bfd_getb16; external LIB_NAME;
-function bfd_getl16; external LIB_NAME;
-function bfd_getb_signed_16; external LIB_NAME;
-function bfd_getl_signed_16; external LIB_NAME;
-procedure bfd_putb64; external LIB_NAME;
-procedure bfd_putl64; external LIB_NAME;
-procedure bfd_putb32; external LIB_NAME;
-procedure bfd_putl32; external LIB_NAME;
-procedure bfd_putb16; external LIB_NAME;
-procedure bfd_putl16; external LIB_NAME;
-function bfd_get_bits; external LIB_NAME;
-procedure bfd_put_bits; external LIB_NAME;
-function bfd_ecoff_get_gp_value; external LIB_NAME;
-function bfd_ecoff_set_gp_value; external LIB_NAME;
-function bfd_ecoff_set_regmasks; external LIB_NAME;
-function bfd_ecoff_debug_init; external LIB_NAME;
-procedure bfd_ecoff_debug_free; external LIB_NAME;
-function bfd_ecoff_debug_accumulate; external LIB_NAME;
-function bfd_get_stab_name; external LIB_NAME;
-
-function bfd_fdopenr; external LIB_NAME;
-function bfd_openstreamr; external LIB_NAME;
-function bfd_openw; external LIB_NAME;
-function bfd_close; external LIB_NAME;
-function bfd_close_all_done; external LIB_NAME;
-function bfd_create; external LIB_NAME;
-function bfd_make_writable; external LIB_NAME;
-function bfd_make_readable; external LIB_NAME;
-
-function bfd_set_error_handler; external LIB_NAME;
-
-// partly tested:
-procedure bfd_init; external LIB_NAME;
-function bfd_openr; external LIB_NAME;
-function bfd_check_format; external LIB_NAME;
-function bfd_check_format_matches; external LIB_NAME;
-
-function bfd_get_error; external LIB_NAME;
-function bfd_errmsg; external LIB_NAME;
-function bfd_printable_arch_mach; external LIB_NAME;
-function bfd_get_arch; external LIB_NAME;
-function bfd_get_mach; external LIB_NAME;
-
-procedure bfd_map_over_sections; external LIB_NAME;
-function bfd_get_section_contents; external LIB_NAME;
-
 // Makros:
 
 function bfd_get_filename(abfd: PBFD): pchar;

+ 3 - 70
packages/extra/ncurses/menu.pp

@@ -193,76 +193,6 @@ uses ncurses;
   #endif
    }
   { --------- prototypes for libmenu functions -----------------------------  }
-  function menu_items(_para1:pMENU):ppITEM;cdecl;
-  function current_item(_para1:pMENU):pITEM;cdecl;
-  function new_item(_para1:pchar; _para2:pchar):pITEM;cdecl;
-  function new_menu(_para1:ppITEM):pMENU;cdecl;
-  function item_opts(_para1:pITEM):Item_Options;cdecl;
-  function menu_opts(_para1:pMENU):Menu_Options;cdecl;
-(*
-  function item_init(_para1:pMENU):Menu_Hook;
-  function item_term(_para1:pMENU):Menu_Hook;
-  function menu_init(_para1:pMENU):Menu_Hook;
-  function menu_term(_para1:pMENU):Menu_Hook;
-*)
-  function menu_sub(_para1:pMENU):pWINDOW;cdecl;
-  function menu_win(_para1:pMENU):pWINDOW;cdecl;
-  function item_description(_para1:pITEM):pchar;cdecl;
-  function item_name(_para1:pITEM):pchar;cdecl;
-  function menu_mark(_para1:pMENU):pchar;cdecl;
-  function menu_request_name(_para1:longint):pchar;cdecl;
-  function menu_pattern(_para1:pMENU):pchar;cdecl;
-  function menu_userptr(_para1:pMENU):pointer;cdecl;
-  function item_userptr(_para1:pITEM):pointer;cdecl;
-  function menu_back(_para1:pMENU):chtype;cdecl;
-  function menu_fore(_para1:pMENU):chtype;cdecl;
-  function menu_grey(_para1:pMENU):chtype;cdecl;
-  function free_item(_para1:pITEM):longint;cdecl;
-  function free_menu(_para1:pMENU):longint;cdecl;
-  function item_count(_para1:pMENU):longint;cdecl;
-  function item_index(_para1:pITEM):longint;cdecl;
-  function item_opts_off(_para1:pITEM; _para2:Item_Options):longint;cdecl;
-  function item_opts_on(_para1:pITEM; _para2:Item_Options):longint;cdecl;
-  function menu_driver(_para1:pMENU; _para2:longint):longint;cdecl;
-  function menu_opts_off(_para1:pMENU; _para2:Menu_Options):longint;cdecl;
-  function menu_opts_on(_para1:pMENU; _para2:Menu_Options):longint;cdecl;
-  function menu_pad(_para1:pMENU):longint;cdecl;
-  function pos_menu_cursor(_para1:pMENU):longint;cdecl;
-  function post_menu(_para1:pMENU):longint;cdecl;
-  function scale_menu(_para1:pMENU; _para2:plongint; _para3:plongint):longint;cdecl;
-  function set_current_item(menu:pMENU; item:pITEM):longint;cdecl;
-{  function set_item_init(_para1:pMENU; _para2:Menu_Hook):longint;cdecl;}
-  function set_item_opts(_para1:pITEM; _para2:Item_Options):longint;cdecl;
-{  function set_item_term(_para1:pMENU; _para2:Menu_Hook):longint;cdecl;}
-  function set_item_userptr(_para1:pITEM; _para2:pointer):longint;cdecl;
-  function set_item_value(_para1:pITEM; _para2:bool):longint;cdecl;
-  function set_menu_back(_para1:pMENU; _para2:chtype):longint;cdecl;
-  function set_menu_fore(_para1:pMENU; _para2:chtype):longint;cdecl;
-  function set_menu_format(_para1:pMENU; _para2:longint; _para3:longint):longint;cdecl;
-  function set_menu_grey(_para1:pMENU; _para2:chtype):longint;cdecl;
-{  function set_menu_init(_para1:pMENU; _para2:Menu_Hook):longint;cdecl;}
-  function set_menu_items(_para1:pMENU; _para2:ppITEM):longint;cdecl;
-  function set_menu_mark(_para1:pMENU; _para2:pchar):longint;cdecl;
-  function set_menu_opts(_para1:pMENU; _para2:Menu_Options):longint;cdecl;
-  function set_menu_pad(_para1:pMENU; _para2:longint):longint;cdecl;
-  function set_menu_pattern(_para1:pMENU; _para2:pchar):longint;cdecl;
-  function set_menu_sub(_para1:pMENU; _para2:pWINDOW):longint;cdecl;
-{  function set_menu_term(_para1:pMENU; _para2:Menu_Hook):longint;cdecl;}
-  function set_menu_userptr(_para1:pMENU; _para2:pointer):longint;cdecl;
-  function set_menu_win(_para1:pMENU; _para2:pWINDOW):longint;cdecl;
-  function set_top_row(_para1:pMENU; _para2:longint):longint;cdecl;
-  function top_row(_para1:pMENU):longint;cdecl;
-  function unpost_menu(_para1:pMENU):longint;cdecl;
-  function menu_request_by_name(_para1:pchar):longint;cdecl;
-  function set_menu_spacing(_para1:pMENU; _para2:longint; _para3:longint; _para4:longint):longint;cdecl;
-  function menu_spacing(_para1:pMENU; _para2:plongint; _para3:plongint; _para4:plongint):longint;cdecl;
-  function item_value(_para1:pITEM):bool;cdecl;
-  function item_visible(_para1:pITEM):bool;cdecl;
-{  procedure menu_format(_para1:pMENU; _para2:plongint; _para3:plongint);}
-
-  implementation
-
-{const External_library=''; Setup as you need!}
 
   function menu_items(_para1:pMENU):ppITEM;cdecl;external libmenu;
   function current_item(_para1:pMENU):pITEM;cdecl;external libmenu;
@@ -347,5 +277,8 @@ uses ncurses;
        { You must implemented this function }
     end;
 *)
+
+  implementation
+
 begin
 end.

+ 6 - 23
packages/extra/ncurses/panel.pp

@@ -41,28 +41,6 @@ uses ncurses;
           obscure : pointer;
        end;
 
-  function panel_window(_para1:pPANEL):pWINDOW;cdecl;
-  procedure update_panels;cdecl;
-  function hide_panel(_para1:pPANEL):longint;cdecl;
-  function show_panel(_para1:pPANEL):longint;cdecl;
-  function del_panel(_para1:pPANEL):longint;cdecl;
-  function top_panel(_para1:pPANEL):longint;cdecl;
-  function bottom_panel(_para1:pPANEL):longint;cdecl;
-  function new_panel(_para1:pWINDOW):pPANEL;cdecl;
-  function panel_above(_para1:pPANEL):pPANEL;cdecl;
-  function panel_below(_para1:pPANEL):pPANEL;cdecl;
-
-  { extern  int set_panel_userptr(PANEL  , NCURSES_CONST void  );  }
-  { extern  NCURSES_CONST void  panel_userptr(const PANEL  );  }
-
-  function move_panel(_para1:pPANEL; _para2:longint; _para3:longint):longint;cdecl;
-  function replace_panel(_para1:pPANEL; _para2:pWINDOW):longint;cdecl;
-  function panel_hidden(_para1:pPANEL):longint;cdecl;
-
-implementation
-
-{const External_library='';}
-
   function panel_window(_para1:pPANEL):pWINDOW;cdecl;external libpanel;
   procedure update_panels;cdecl;external libpanel;
   function hide_panel(_para1:pPANEL):longint;cdecl;external libpanel;
@@ -81,10 +59,15 @@ implementation
   function replace_panel(_para1:pPANEL; _para2:pWINDOW):longint;cdecl;external libpanel;
   function panel_hidden(_para1:pPANEL):longint;cdecl;external libpanel;
 
+implementation
+
 end.
 {
   $Log$
-  Revision 1.4  2004-05-08 20:50:19  jonas
+  Revision 1.5  2004-11-21 16:33:55  peter
+    * external fixes
+
+  Revision 1.4  2004/05/08 20:50:19  jonas
     * Darwin fixes by mischi
 
   Revision 1.3  2002/09/09 19:43:48  peter

+ 143 - 291
packages/extra/svgalib/svgalib.pp

@@ -254,92 +254,92 @@ type
 var
   graph_mem: PChar;
 
-Function vga_setmode(mode: Longint): Longint; cdecl;
-Function vga_hasmode(mode: Longint): Boolean; cdecl;
-Function vga_setflipchar(c: Longint): Longint; cdecl;
-
-Function vga_clear: Longint; cdecl;
-Function vga_flip: Longint; cdecl;
-
-Function vga_getxdim: Longint; cdecl;
-Function vga_getydim: Longint; cdecl;
-Function vga_getcolors: Longint; cdecl;
-
-Function vga_setpalette(index: Longint; red: Longint; green: Longint; blue: Longint): Longint; cdecl;
-Function vga_getpalette(index: Longint; var red: Longint; var green: Longint; var blue: Longint): Longint; cdecl;
-Function vga_setpalvec(start: Longint; num: Longint; var pal): Longint; cdecl;
-Function vga_getpalvec(start: Longint; num: Longint; var pal): Longint; cdecl;
-
-Function vga_screenoff: Longint; cdecl;
-Function vga_screenon: Longint; cdecl;
-
-Function vga_setcolor(color: Longint): Longint; cdecl;
-Function vga_drawpixel(x, y: Longint): Longint; cdecl;
-Function vga_drawline(x1, y1, x2, y2: Longint): Longint; cdecl;
-Function vga_drawscanline(line: Longint; var colors): Longint; cdecl;
-Function vga_drawscansegment(var colors; x, y: Longint; length: Longint): Longint; cdecl;
-Function vga_getpixel(x, y: Longint): Longint; cdecl;
-Function vga_getscansegment(var colors; x, y: Longint; length: Longint): Longint; cdecl;
-
-Function vga_getch: Longint; cdecl;
-
-Function vga_dumpregs: Longint; cdecl;
-
-
-Function vga_getmodeinfo(mode: Longint): pvga_modeinfo; cdecl;
-Function vga_getdefaultmode: Longint; cdecl;
-Function vga_getcurrentmode: Longint; cdecl;
-Function vga_getcurrentchipset: Longint; cdecl;
-Function vga_getmodename(mode: Longint): PChar; cdecl;
-Function vga_getmodenumber(name: PChar): Longint; cdecl;
-Function vga_lastmodenumber: Longint; cdecl;
-
-Function vga_getgraphmem: PChar; cdecl;
-
-Procedure vga_setpage(p: Longint); cdecl;
-Procedure vga_setreadpage(p: Longint); cdecl;
-Procedure vga_setwritepage(p: Longint); cdecl;
-Procedure vga_setlogicalwidth(w: Longint); cdecl;
-Procedure vga_setdisplaystart(a: Longint); cdecl;
-Procedure vga_waitretrace; cdecl;
-Function vga_claimvideomemory(n: Longint): Longint; cdecl;
-Procedure vga_disabledriverreport; cdecl;
-Function vga_setmodeX: Longint; cdecl;
-Function vga_init: Longint;     { Used to return void in svgalib <= 1.12. } cdecl;
-Function vga_getmousetype: Longint; cdecl;
-Function vga_getmonitortype: Longint; cdecl;
-Procedure vga_setmousesupport(s: Longint); cdecl;
-Procedure vga_lockvc; cdecl;
-Procedure vga_unlockvc; cdecl;
-Function vga_getkey: Longint; cdecl;
-Procedure vga_runinbackground(s: Longint); cdecl;
-Function vga_oktowrite: Longint; cdecl;
+Function vga_setmode(mode: Longint): Longint; cdecl; external;
+Function vga_hasmode(mode: Longint): Boolean; cdecl; external;
+Function vga_setflipchar(c: Longint): Longint; cdecl; external;
+
+Function vga_clear: Longint; cdecl; external;
+Function vga_flip: Longint; cdecl; external;
+
+Function vga_getxdim: Longint; cdecl; external;
+Function vga_getydim: Longint; cdecl; external;
+Function vga_getcolors: Longint; cdecl; external;
+
+Function vga_setpalette(index: Longint; red: Longint; green: Longint; blue: Longint): Longint; cdecl; external;
+Function vga_getpalette(index: Longint; var red: Longint; var green: Longint; var blue: Longint): Longint; cdecl; external;
+Function vga_setpalvec(start: Longint; num: Longint; var pal): Longint; cdecl; external;
+Function vga_getpalvec(start: Longint; num: Longint; var pal): Longint; cdecl; external;
+
+Function vga_screenoff: Longint; cdecl; external;
+Function vga_screenon: Longint; cdecl; external;
+
+Function vga_setcolor(color: Longint): Longint; cdecl; external;
+Function vga_drawpixel(x, y: Longint): Longint; cdecl; external;
+Function vga_drawline(x1, y1, x2, y2: Longint): Longint; cdecl; external;
+Function vga_drawscanline(line: Longint; var colors): Longint; cdecl; external;
+Function vga_drawscansegment(var colors; x, y: Longint; length: Longint): Longint; cdecl; external;
+Function vga_getpixel(x, y: Longint): Longint; cdecl; external;
+Function vga_getscansegment(var colors; x, y: Longint; length: Longint): Longint; cdecl; external;
+
+Function vga_getch: Longint; cdecl; external;
+
+Function vga_dumpregs: Longint; cdecl; external;
+
+
+Function vga_getmodeinfo(mode: Longint): pvga_modeinfo; cdecl; external;
+Function vga_getdefaultmode: Longint; cdecl; external;
+Function vga_getcurrentmode: Longint; cdecl; external;
+Function vga_getcurrentchipset: Longint; cdecl; external;
+Function vga_getmodename(mode: Longint): PChar; cdecl; external;
+Function vga_getmodenumber(name: PChar): Longint; cdecl; external;
+Function vga_lastmodenumber: Longint; cdecl; external;
+
+Function vga_getgraphmem: PChar; cdecl; external;
+
+Procedure vga_setpage(p: Longint); cdecl; external;
+Procedure vga_setreadpage(p: Longint); cdecl; external;
+Procedure vga_setwritepage(p: Longint); cdecl; external;
+Procedure vga_setlogicalwidth(w: Longint); cdecl; external;
+Procedure vga_setdisplaystart(a: Longint); cdecl; external;
+Procedure vga_waitretrace; cdecl; external;
+Function vga_claimvideomemory(n: Longint): Longint; cdecl; external;
+Procedure vga_disabledriverreport; cdecl; external;
+Function vga_setmodeX: Longint; cdecl; external;
+Function vga_init: Longint;     { Used to return void in svgalib <= 1.12. } cdecl; external;
+Function vga_getmousetype: Longint; cdecl; external;
+Function vga_getmonitortype: Longint; cdecl; external;
+Procedure vga_setmousesupport(s: Longint); cdecl; external;
+Procedure vga_lockvc; cdecl; external;
+Procedure vga_unlockvc; cdecl; external;
+Function vga_getkey: Longint; cdecl; external;
+Procedure vga_runinbackground(s: Longint); cdecl; external;
+Function vga_oktowrite: Longint; cdecl; external;
 Procedure vga_copytoplanar256(virtualp: PChar; pitch: Longint;
-                                  voffset: Longint; vpitch: Longint; w: Longint; h: Longint);cdecl;
-Procedure vga_copytoplanar16(virtualp: PChar; pitch, voffset, vpitch, w, h: Longint); cdecl;
-Procedure vga_copytoplane(virtualp: PChar; pitch, voffset, vpitch, w, h, plane: Longint); cdecl;
-Function vga_setlinearaddressing: Longint; cdecl;
-Procedure vga_safety_fork(shutdown_routine: shutdown_routine_ptr); cdecl;
-
-Procedure vga_setchipset(c: Longint); cdecl;
-Procedure vga_setchipsetandfeatures(c: Longint; par1: Longint; par2: Longint); cdecl;
-Procedure vga_gettextfont(font: Pointer); cdecl;
-Procedure vga_puttextfont(font: Pointer); cdecl;
-Procedure vga_settextmoderegs(regs: Pointer); cdecl;
-Procedure vga_gettextmoderegs(regs: Pointer); cdecl;
-
-Function vga_white: Longint; cdecl;
-Function vga_setegacolor(c: Longint): Longint; cdecl;
-Function vga_setrgbcolor(r, g, b: Longint): Longint; cdecl;
-
-Procedure vga_bitblt(srcaddr, destaddr: Longint; w, h: Longint; pitch: Longint); cdecl;
-Procedure vga_imageblt(srcaddr: Pointer; destaddr: Longint; w, h, pitch: Longint); cdecl;
-Procedure vga_fillblt(destaddr: Longint; w, h, pitch, c: Longint); cdecl;
-Procedure vga_hlinelistblt(ymin, n: Longint; var xmin, xmax: Longint; pitch, c: Longint); cdecl;
-Procedure vga_blitwait; cdecl;
+                                  voffset: Longint; vpitch: Longint; w: Longint; h: Longint);cdecl; external;
+Procedure vga_copytoplanar16(virtualp: PChar; pitch, voffset, vpitch, w, h: Longint); cdecl; external;
+Procedure vga_copytoplane(virtualp: PChar; pitch, voffset, vpitch, w, h, plane: Longint); cdecl; external;
+Function vga_setlinearaddressing: Longint; cdecl; external;
+Procedure vga_safety_fork(shutdown_routine: shutdown_routine_ptr); cdecl; external;
+
+Procedure vga_setchipset(c: Longint); cdecl; external;
+Procedure vga_setchipsetandfeatures(c: Longint; par1: Longint; par2: Longint); cdecl; external;
+Procedure vga_gettextfont(font: Pointer); cdecl; external;
+Procedure vga_puttextfont(font: Pointer); cdecl; external;
+Procedure vga_settextmoderegs(regs: Pointer); cdecl; external;
+Procedure vga_gettextmoderegs(regs: Pointer); cdecl; external;
+
+Function vga_white: Longint; cdecl; external;
+Function vga_setegacolor(c: Longint): Longint; cdecl; external;
+Function vga_setrgbcolor(r, g, b: Longint): Longint; cdecl; external;
+
+Procedure vga_bitblt(srcaddr, destaddr: Longint; w, h: Longint; pitch: Longint); cdecl; external;
+Procedure vga_imageblt(srcaddr: Pointer; destaddr: Longint; w, h, pitch: Longint); cdecl; external;
+Procedure vga_fillblt(destaddr: Longint; w, h, pitch, c: Longint); cdecl; external;
+Procedure vga_hlinelistblt(ymin, n: Longint; var xmin, xmax: Longint; pitch, c: Longint); cdecl; external;
+Procedure vga_blitwait; cdecl; external;
 
 {
-  The following Functions are not implemented, because they use variable number cdecl;
+  The following Functions are not implemented, because they use variable number cdecl; external;
   of arguments
 int vga_ext_set(unsigned what,...);
 int vga_accel(unsigned operation,...);
@@ -358,7 +358,7 @@ type
   end;
 
 Function vga_waitevent(which: Longint; var inp, outp, excp: fd_set;
-                             timeout: timeval): Longint;cdecl;
+                             timeout: timeval): Longint;cdecl; external;
 
 {
  * return value >= has bits set for mouse/keyboard events detected.
@@ -412,58 +412,58 @@ type
 
 { Configuration
 }
-Function gl_setcontextvga(m: LongInt): LongInt; cdecl;
-Function gl_setcontextvgavirtual(m: LongInt): LongInt; cdecl;
-Procedure gl_setcontextvirtual(w, h, bpp, bitspp: LongInt; vbuf: pointer); cdecl;
-Procedure gl_setcontextwidth(w: LongInt); cdecl;
-Procedure gl_setcontextheight(h: LongInt); cdecl;
-Function gl_allocatecontext: PGraphicsContext; cdecl;
-Procedure gl_setcontext(gc: PGraphicsContext); cdecl;
-Procedure gl_getcontext(gc: PGraphicsContext); cdecl;
-Procedure gl_freecontext(gc: PGraphicsContext); cdecl;
+Function gl_setcontextvga(m: LongInt): LongInt; cdecl; external;
+Function gl_setcontextvgavirtual(m: LongInt): LongInt; cdecl; external;
+Procedure gl_setcontextvirtual(w, h, bpp, bitspp: LongInt; vbuf: pointer); cdecl; external;
+Procedure gl_setcontextwidth(w: LongInt); cdecl; external;
+Procedure gl_setcontextheight(h: LongInt); cdecl; external;
+Function gl_allocatecontext: PGraphicsContext; cdecl; external;
+Procedure gl_setcontext(gc: PGraphicsContext); cdecl; external;
+Procedure gl_getcontext(gc: PGraphicsContext); cdecl; external;
+Procedure gl_freecontext(gc: PGraphicsContext); cdecl; external;
 
 { Line drawing
 }
-Procedure gl_setpixel(x, y, c: LongInt); cdecl;
-Procedure gl_setpixelrgb(x, y, r, g, b: LongInt); cdecl;
-Function gl_getpixel(x, y: LongInt): LongInt; cdecl;
-Procedure gl_getpixelrgb(x, y: LongInt; var r, g, b: LongInt); cdecl;
-Function gl_rgbcolor(r, g, b: LongInt): LongInt; cdecl;
-Procedure gl_hline(x1, y, x2, c: LongInt); cdecl;
-Procedure gl_line(x1, y1, x2, y2, c: LongInt); cdecl;
-Procedure gl_circle(x, y, r, c: LongInt ); cdecl;
-
-{ Box (bitmap) Functions cdecl;
+Procedure gl_setpixel(x, y, c: LongInt); cdecl; external;
+Procedure gl_setpixelrgb(x, y, r, g, b: LongInt); cdecl; external;
+Function gl_getpixel(x, y: LongInt): LongInt; cdecl; external;
+Procedure gl_getpixelrgb(x, y: LongInt; var r, g, b: LongInt); cdecl; external;
+Function gl_rgbcolor(r, g, b: LongInt): LongInt; cdecl; external;
+Procedure gl_hline(x1, y, x2, c: LongInt); cdecl; external;
+Procedure gl_line(x1, y1, x2, y2, c: LongInt); cdecl; external;
+Procedure gl_circle(x, y, r, c: LongInt ); cdecl; external;
+
+{ Box (bitmap) Functions cdecl; external;
 }
-Procedure gl_fillbox(x, y, w, h, c: LongInt); cdecl;
-Procedure gl_getbox(x, y, w, h: LongInt; dp: pointer); cdecl;
-Procedure gl_putbox(x, y, w, h: LongInt; dp: pointer); cdecl;
-Procedure gl_putboxpart(x, y, w, h, bw, bh: LongInt; b: pointer; xo, yo: LongInt); cdecl;
-Procedure gl_putboxmask(x, y, w, h: LongInt; dp: pointer); cdecl;
-Procedure gl_copybox(x1, y1, w, h, x2, y2: LongInt); cdecl;
-Procedure gl_copyboxtocontext(x1, y1, w, h: LongInt; var gc: TGraphicsContext; x2, y2: LongInt); cdecl;
-Procedure gl_copyboxfromcontext(var gc: TGraphicsContext; x1, y1, w, h, x2, y2: LongInt); cdecl;
+Procedure gl_fillbox(x, y, w, h, c: LongInt); cdecl; external;
+Procedure gl_getbox(x, y, w, h: LongInt; dp: pointer); cdecl; external;
+Procedure gl_putbox(x, y, w, h: LongInt; dp: pointer); cdecl; external;
+Procedure gl_putboxpart(x, y, w, h, bw, bh: LongInt; b: pointer; xo, yo: LongInt); cdecl; external;
+Procedure gl_putboxmask(x, y, w, h: LongInt; dp: pointer); cdecl; external;
+Procedure gl_copybox(x1, y1, w, h, x2, y2: LongInt); cdecl; external;
+Procedure gl_copyboxtocontext(x1, y1, w, h: LongInt; var gc: TGraphicsContext; x2, y2: LongInt); cdecl; external;
+Procedure gl_copyboxfromcontext(var gc: TGraphicsContext; x1, y1, w, h, x2, y2: LongInt); cdecl; external;
 { The following Functions only work in 256-color modes: }
-Procedure gl_compileboxmask(w, h: LongInt; sdp, dpp: pointer); cdecl;
-Function gl_compiledboxmasksize(w, h: LongInt; sdp: pointer): LongInt; cdecl;
-Procedure gl_putboxmaskcompiled(x, y, w, h: LongInt; dp: pointer); cdecl;
+Procedure gl_compileboxmask(w, h: LongInt; sdp, dpp: pointer); cdecl; external;
+Function gl_compiledboxmasksize(w, h: LongInt; sdp: pointer): LongInt; cdecl; external;
+Procedure gl_putboxmaskcompiled(x, y, w, h: LongInt; dp: pointer); cdecl; external;
 
 { Miscellaneous
  }
 
-Procedure gl_clearscreen(c: LongInt); cdecl;
-Procedure gl_scalebox(w1, h1: LongInt; sb: pointer; w2, h2: LongInt; db: pointer); cdecl;
-Procedure gl_setdisplaystart(x, y: LongInt); cdecl;
-Procedure gl_enableclipping; cdecl;
-Procedure gl_setclippingwindow(x1, y1, x2, y2: LongInt); cdecl;
-Procedure gl_disableclipping; cdecl;
+Procedure gl_clearscreen(c: LongInt); cdecl; external;
+Procedure gl_scalebox(w1, h1: LongInt; sb: pointer; w2, h2: LongInt; db: pointer); cdecl; external;
+Procedure gl_setdisplaystart(x, y: LongInt); cdecl; external;
+Procedure gl_enableclipping; cdecl; external;
+Procedure gl_setclippingwindow(x1, y1, x2, y2: LongInt); cdecl; external;
+Procedure gl_disableclipping; cdecl; external;
 
 { Screen buffering
 }
 
-Procedure gl_copyscreen(var gc: TGraphicsContext); cdecl;
-Procedure gl_setscreenoffset(o: LongInt); cdecl;
-Function gl_enablepageflipping(var gc: TGraphicsContext): LongInt; cdecl;
+Procedure gl_copyscreen(var gc: TGraphicsContext); cdecl; external;
+Procedure gl_setscreenoffset(o: LongInt); cdecl; external;
+Function gl_enablepageflipping(var gc: TGraphicsContext): LongInt; cdecl; external;
 
 { Text
  }
@@ -476,13 +476,13 @@ const
   FONT_EXPANDED       = 0;
   FONT_COMPRESSED     = 2;
 
-Procedure gl_expandfont(fw, fh, c: LongInt; sfdp, dfdp: pointer); cdecl;
-Procedure gl_setfont(fw, fh: LongInt; fdp: pointer); cdecl;
-Procedure gl_colorfont(fw, fh, c: LongInt; fdp: pointer); cdecl;
-Procedure gl_setwritemode(wm: LongInt); cdecl;
-Procedure gl_write(x, y: LongInt; s: PChar); cdecl;
-Procedure gl_writen(x, y, n: LongInt; s: PChar); cdecl;
-Procedure gl_setfontcolors(bg, fg: LongInt); cdecl;
+Procedure gl_expandfont(fw, fh, c: LongInt; sfdp, dfdp: pointer); cdecl; external;
+Procedure gl_setfont(fw, fh: LongInt; fdp: pointer); cdecl; external;
+Procedure gl_colorfont(fw, fh, c: LongInt; fdp: pointer); cdecl; external;
+Procedure gl_setwritemode(wm: LongInt); cdecl; external;
+Procedure gl_write(x, y: LongInt; s: PChar); cdecl; external;
+Procedure gl_writen(x, y, n: LongInt; s: PChar); cdecl; external;
+Procedure gl_setfontcolors(bg, fg: LongInt); cdecl; external;
 
 {extern unsigned char *gl_font8x8;      /* compressed 8x8 font */}
 
@@ -493,174 +493,26 @@ type
 type
   TRGBPalette = array[0..255] of TRGB;
 
-Procedure gl_setpalettecolor(c, r, b, g: LongInt); cdecl;
-Procedure gl_getpalettecolor(c: LongInt; var r, b, g: LongInt); cdecl;
-Procedure gl_setpalettecolors(s, n: LongInt; dp: pointer); cdecl;
-Procedure gl_getpalettecolors(s, n: LongInt; dp: pointer); cdecl;
-Procedure gl_setpalette(p: pointer); cdecl;
-Procedure gl_getpalette(p: pointer); cdecl;
-Procedure gl_setrgbpalette; cdecl;
+Procedure gl_setpalettecolor(c, r, b, g: LongInt); cdecl; external;
+Procedure gl_getpalettecolor(c: LongInt; var r, b, g: LongInt); cdecl; external;
+Procedure gl_setpalettecolors(s, n: LongInt; dp: pointer); cdecl; external;
+Procedure gl_getpalettecolors(s, n: LongInt; dp: pointer); cdecl; external;
+Procedure gl_setpalette(p: pointer); cdecl; external;
+Procedure gl_getpalette(p: pointer); cdecl; external;
+Procedure gl_setrgbpalette; cdecl; external;
 
-Procedure gl_font8x8; { ACTUALLY A DATA POINTER } cdecl;
+Procedure gl_font8x8; { ACTUALLY A DATA POINTER } cdecl; external;
 
 implementation
 
-function vga_setmode(mode: Longint): Longint; Cdecl; External;
-function vga_hasmode(mode: Longint): Boolean; Cdecl; External;
-function vga_setflipchar(c: Longint): Longint; Cdecl; External;
-
-function vga_clear: Longint; Cdecl; External;
-function vga_flip: Longint;  Cdecl; External;
-
-function vga_getxdim: Longint;  Cdecl; External;
-function vga_getydim: Longint;  Cdecl; External;
-function vga_getcolors: Longint;Cdecl; External;
-
-function vga_setpalette(index: Longint; red: Longint; green: Longint; blue: Longint): Longint; Cdecl; External;
-function vga_getpalette(index: Longint; var red: Longint; var green: Longint; var blue: Longint): Longint; Cdecl; External;
-function vga_setpalvec(start: Longint; num: Longint; var pal): Longint; Cdecl; External;
-function vga_getpalvec(start: Longint; num: Longint; var pal): Longint; Cdecl; External;
-
-function vga_screenoff: Longint; Cdecl; External;
-function vga_screenon: Longint;  Cdecl; External;
-
-function vga_setcolor(color: Longint): Longint; Cdecl; External;
-function vga_drawpixel(x, y: Longint): Longint; Cdecl; External;
-function vga_drawline(x1, y1, x2, y2: Longint): Longint; Cdecl; External;
-function vga_drawscanline(line: Longint; var colors): Longint; Cdecl; External;
-function vga_drawscansegment(var colors; x, y: Longint; length: Longint): Longint; Cdecl; External;
-function vga_getpixel(x, y: Longint): Longint; Cdecl; External;
-function vga_getscansegment(var colors; x, y: Longint; length: Longint): Longint; Cdecl; External;
-
-function vga_getch: Longint; Cdecl; External;
-
-function vga_dumpregs: Longint; Cdecl; External;
-
-
-function vga_getmodeinfo(mode: Longint): pvga_modeinfo; Cdecl; External;
-function vga_getdefaultmode: Longint; Cdecl; External;
-function vga_getcurrentmode: Longint; Cdecl; External;
-function vga_getcurrentchipset: Longint; Cdecl; External;
-function vga_getmodename(mode: Longint): PChar; Cdecl; External;
-function vga_getmodenumber(name: PChar): Longint; Cdecl; External;
-function vga_lastmodenumber: Longint; Cdecl; External;
-
-function vga_getgraphmem: PChar; Cdecl; External;
-
-procedure vga_setpage(p: Longint); Cdecl; External;
-procedure vga_setreadpage(p: Longint); Cdecl; External;
-procedure vga_setwritepage(p: Longint); Cdecl; External;
-procedure vga_setlogicalwidth(w: Longint); Cdecl; External;
-procedure vga_setdisplaystart(a: Longint); Cdecl; External;
-procedure vga_waitretrace; Cdecl; External;
-function vga_claimvideomemory(n: Longint): Longint; Cdecl; External;
-procedure vga_disabledriverreport; Cdecl; External;
-function vga_setmodeX: Longint; Cdecl; External;
-function vga_init: Longint; Cdecl; External;    { Used to return void in svgalib <= 1.12. }
-function vga_getmousetype: Longint; Cdecl; External;
-function vga_getmonitortype: Longint; Cdecl; External;
-procedure vga_setmousesupport(s: Longint); Cdecl; External;
-procedure vga_lockvc; Cdecl; External;
-procedure vga_unlockvc; Cdecl; External;
-function vga_getkey: Longint; Cdecl; External;
-procedure vga_runinbackground(s: Longint); Cdecl; External;
-function vga_oktowrite: Longint; Cdecl; External;
-procedure vga_copytoplanar256(virtualp: PChar; pitch: Longint;
-                                  voffset: Longint; vpitch: Longint; w: Longint; h: Longint); Cdecl; External;
-procedure vga_copytoplanar16(virtualp: PChar; pitch, voffset, vpitch, w, h: Longint); Cdecl; External;
-procedure vga_copytoplane(virtualp: PChar; pitch, voffset, vpitch, w, h, plane: Longint); Cdecl; External;
-function vga_setlinearaddressing: Longint; Cdecl; External;
-procedure vga_safety_fork(shutdown_routine: shutdown_routine_ptr); Cdecl; External;
-
-procedure vga_setchipset(c: Longint); Cdecl; External;
-procedure vga_setchipsetandfeatures(c: Longint; par1: Longint; par2: Longint); Cdecl; External;
-procedure vga_gettextfont(font: Pointer); Cdecl; External;
-procedure vga_puttextfont(font: Pointer); Cdecl; External;
-procedure vga_settextmoderegs(regs: Pointer); Cdecl; External;
-procedure vga_gettextmoderegs(regs: Pointer); Cdecl; External;
-
-function vga_white: Longint; Cdecl; External;
-function vga_setegacolor(c: Longint): Longint; Cdecl; External;
-function vga_setrgbcolor(r, g, b: Longint): Longint; Cdecl; External;
-
-procedure vga_bitblt(srcaddr, destaddr: Longint; w, h: Longint; pitch: Longint); Cdecl; External;
-procedure vga_imageblt(srcaddr: Pointer; destaddr: Longint; w, h, pitch: Longint); Cdecl; External;
-procedure vga_fillblt(destaddr: Longint; w, h, pitch, c: Longint); Cdecl; External;
-procedure vga_hlinelistblt(ymin, n: Longint; var xmin, xmax: Longint; pitch, c: Longint); Cdecl; External;
-procedure vga_blitwait; Cdecl; External;
-
-{
-  The following functions are not implemented, because they use variable number
-  of arguments
-int vga_ext_set(unsigned what,...);
-int vga_accel(unsigned operation,...);
-}
-
-function vga_waitevent(which: Longint; var inp, outp, excp: fd_set;
-                             timeout: timeval): Longint; Cdecl; External;
-
-
-{ vgagl }
-
-function gl_setcontextvga(m: LongInt): LongInt; Cdecl; External;
-function gl_setcontextvgavirtual(m: LongInt): LongInt; Cdecl; External;
-procedure gl_setcontextvirtual(w, h, bpp, bitspp: LongInt; vbuf: pointer); Cdecl; External;
-procedure gl_setcontextwidth(w: LongInt); Cdecl; External;
-procedure gl_setcontextheight(h: LongInt); Cdecl; External;
-function gl_allocatecontext: PGraphicsContext; Cdecl; External;
-procedure gl_setcontext(gc: PGraphicsContext); Cdecl; External;
-procedure gl_getcontext(gc: PGraphicsContext); Cdecl; External;
-procedure gl_freecontext(gc: PGraphicsContext); Cdecl; External;
-procedure gl_setpixel(x, y, c: LongInt); Cdecl; External;
-procedure gl_setpixelrgb(x, y, r, g, b: LongInt); Cdecl; External;
-function gl_getpixel(x, y: LongInt): LongInt; Cdecl; External;
-procedure gl_getpixelrgb(x, y: LongInt; var r, g, b: LongInt); Cdecl; External;
-function gl_rgbcolor(r, g, b: LongInt): LongInt; Cdecl; External;
-procedure gl_hline(x1, y, x2, c: LongInt); Cdecl; External;
-procedure gl_line(x1, y1, x2, y2, c: LongInt); Cdecl; External;
-procedure gl_circle(x, y, r, c: LongInt ); Cdecl; External;
-procedure gl_fillbox(x, y, w, h, c: LongInt); Cdecl; External;
-procedure gl_getbox(x, y, w, h: LongInt; dp: pointer); Cdecl; External;
-procedure gl_putbox(x, y, w, h: LongInt; dp: pointer); Cdecl; External;
-procedure gl_putboxpart(x, y, w, h, bw, bh: LongInt; b: pointer; xo, yo: LongInt); Cdecl; External;
-procedure gl_putboxmask(x, y, w, h: LongInt; dp: pointer); Cdecl; External;
-procedure gl_copybox(x1, y1, w, h, x2, y2: LongInt); Cdecl; External;
-procedure gl_copyboxtocontext(x1, y1, w, h: LongInt; var gc: TGraphicsContext; x2, y2: LongInt); Cdecl; External;
-procedure gl_copyboxfromcontext(var gc: TGraphicsContext; x1, y1, w, h, x2, y2: LongInt); Cdecl; External;
-procedure gl_compileboxmask(w, h: LongInt; sdp, dpp: pointer); Cdecl; External;
-function gl_compiledboxmasksize(w, h: LongInt; sdp: pointer): LongInt; Cdecl; External;
-procedure gl_putboxmaskcompiled(x, y, w, h: LongInt; dp: pointer); Cdecl; External;
-procedure gl_clearscreen(c: LongInt); Cdecl; External;
-procedure gl_scalebox(w1, h1: LongInt; sb: pointer; w2, h2: LongInt; db: pointer); Cdecl; External;
-procedure gl_setdisplaystart(x, y: LongInt); Cdecl; External;
-procedure gl_enableclipping; Cdecl; External;
-procedure gl_setclippingwindow(x1, y1, x2, y2: LongInt); Cdecl; External;
-procedure gl_disableclipping; Cdecl; External;
-procedure gl_copyscreen(var gc: TGraphicsContext); Cdecl; External;
-procedure gl_setscreenoffset(o: LongInt); Cdecl; External;
-function gl_enablepageflipping(var gc: TGraphicsContext): LongInt; Cdecl; External;
-procedure gl_expandfont(fw, fh, c: LongInt; sfdp, dfdp: pointer); Cdecl; External;
-procedure gl_setfont(fw, fh: LongInt; fdp: pointer); Cdecl; External;
-procedure gl_colorfont(fw, fh, c: LongInt; fdp: pointer); Cdecl; External;
-procedure gl_setwritemode(wm: LongInt); Cdecl; External;
-procedure gl_write(x, y: LongInt; s: PChar); Cdecl; External;
-procedure gl_writen(x, y, n: LongInt; s: PChar); Cdecl; External;
-procedure gl_setfontcolors(bg, fg: LongInt); Cdecl; External;
-procedure gl_setpalettecolor(c, r, b, g: LongInt); Cdecl; External;
-procedure gl_getpalettecolor(c: LongInt; var r, b, g: LongInt); Cdecl; External;
-procedure gl_setpalettecolors(s, n: LongInt; dp: pointer); Cdecl; External;
-procedure gl_getpalettecolors(s, n: LongInt; dp: pointer); Cdecl; External;
-procedure gl_setpalette(p: pointer); Cdecl; External;
-procedure gl_getpalette(p: pointer); Cdecl; External;
-procedure gl_setrgbpalette; Cdecl; External;
-
-procedure gl_font8x8; Cdecl; External;
-
 
 end.
-
+{
   $Log$
-  Revision 1.2  2002-09-07 15:43:05  peter
+  Revision 1.3  2004-11-21 16:33:55  peter
+    * external fixes
+
+  Revision 1.2  2002/09/07 15:43:05  peter
     * old logs removed and tabs fixed
 
   Revision 1.1  2002/01/29 17:55:22  peter

+ 25 - 44
packages/extra/svgalib/vgamouse.pp

@@ -44,21 +44,21 @@ unit vgamouse;
      MOUSE_6DIM = 63;
      MOUSE_DEFAULTSAMPLERATE = 150;
 
-  function mouse_init(dev:pchar; thetype:longint; samplerate:longint):longint;cdecl;
-  function mouse_init_return_fd(dev:pchar; thetype:longint; samplerate:longint):longint;cdecl;
+  function mouse_init(dev:pchar; thetype:longint; samplerate:longint):longint;cdecl; external;
+  function mouse_init_return_fd(dev:pchar; thetype:longint; samplerate:longint):longint;cdecl; external;
 
   type
 
      __mouse_handler = procedure (button:longint; dx:longint; dy:longint; dz:longint; drx:longint;
-                   dry:longint; drz:longint);CDECL;
+                   dry:longint; drz:longint);cdecl;
 
-  procedure mouse_seteventhandler(handler:__mouse_handler);cdecl;
+  procedure mouse_seteventhandler(handler:__mouse_handler);cdecl; external;
 
-  procedure mouse_close;cdecl;
+  procedure mouse_close;cdecl; external;
 
-  function mouse_update:longint;cdecl;
+  function mouse_update:longint;cdecl; external;
 
-  procedure mouse_waitforupdate;cdecl;
+  procedure mouse_waitforupdate;cdecl; external;
 
   const
      MOUSE_NOWRAP = 0;
@@ -76,52 +76,33 @@ unit vgamouse;
      MOUSE_ROT_ZXZ = 128;
      MOUSE_ROT_YPR = 196;
 
-  procedure mouse_setdefaulteventhandler;cdecl;
-  procedure mouse_setposition(x:longint; y:longint);cdecl;
+  procedure mouse_setdefaulteventhandler;cdecl; external;
+  procedure mouse_setposition(x:longint; y:longint);cdecl; external;
   procedure mouse_setposition_6d(x:longint; y:longint; z:longint; rx:longint; ry:longint;
-              rz:longint; dim_mask:longint);cdecl;
-  procedure mouse_setxrange(x1:longint; x2:longint);cdecl;
-  procedure mouse_setyrange(y1:longint; y2:longint);cdecl;
+              rz:longint; dim_mask:longint);cdecl; external;
+  procedure mouse_setxrange(x1:longint; x2:longint);cdecl; external;
+  procedure mouse_setyrange(y1:longint; y2:longint);cdecl; external;
   procedure mouse_setrange_6d(x1:longint; x2:longint; y1:longint; y2:longint; z1:longint;
               z2:longint; rx1:longint; rx2:longint; ry1:longint; ry2:longint;
-              rz1:longint; rz2:longint; dim_mask:longint);cdecl;
-  procedure mouse_setscale(s:longint);cdecl;
-  procedure mouse_setwrap(w:longint);cdecl;
-  function mouse_getx:longint;cdecl;
-  function mouse_gety:longint;cdecl;
+              rz1:longint; rz2:longint; dim_mask:longint);cdecl; external;
+  procedure mouse_setscale(s:longint);cdecl; external;
+  procedure mouse_setwrap(w:longint);cdecl; external;
+  function mouse_getx:longint;cdecl; external;
+  function mouse_gety:longint;cdecl; external;
   procedure mouse_getposition_6d(x:plongint; y:plongint; z:plongint; rx:plongint; ry:plongint;
-              rz:plongint);cdecl;
-  function mouse_getbutton:longint;cdecl;
+              rz:plongint);cdecl; external;
+  function mouse_getbutton:longint;cdecl; external;
 
 
-  implementation
-
-  function mouse_init(dev:pchar; thetype:longint; samplerate:longint):longint;CDECL; external;
-  function mouse_init_return_fd(dev:pchar; thetype:longint; samplerate:longint):longint;CDECL; external;
-  procedure mouse_seteventhandler(handler:__mouse_handler);CDECL; external;
-  procedure mouse_close;CDECL; external;
-  function mouse_update:longint;CDECL; external;
-  procedure mouse_waitforupdate;CDECL; external;
-  procedure mouse_setdefaulteventhandler;CDECL; external;
-  procedure mouse_setposition(x:longint; y:longint);CDECL; external;
-  procedure mouse_setposition_6d(x:longint; y:longint; z:longint; rx:longint; ry:longint;
-              rz:longint; dim_mask:longint);CDECL; external;
-  procedure mouse_setxrange(x1:longint; x2:longint);CDECL; external;
-  procedure mouse_setyrange(y1:longint; y2:longint);CDECL; external;
-  procedure mouse_setrange_6d(x1:longint; x2:longint; y1:longint; y2:longint; z1:longint;
-              z2:longint; rx1:longint; rx2:longint; ry1:longint; ry2:longint;
-              rz1:longint; rz2:longint; dim_mask:longint);CDECL; external;
-  procedure mouse_setscale(s:longint);CDECL; external;
-  procedure mouse_setwrap(w:longint);CDECL; external;
-  function mouse_getx:longint;CDECL; external;
-  function mouse_gety:longint;CDECL; external;
-  procedure mouse_getposition_6d(x:plongint; y:plongint; z:plongint; rx:plongint; ry:plongint;
-              rz:plongint);CDECL; external;
-  function mouse_getbutton:longint;CDECL; external;
+implementation
 
 end.
+{
   $Log$
-  Revision 1.2  2002-09-07 15:43:05  peter
+  Revision 1.3  2004-11-21 16:33:55  peter
+    * external fixes
+
+  Revision 1.2  2002/09/07 15:43:05  peter
     * old logs removed and tabs fixed
 
   Revision 1.1  2002/01/29 17:55:22  peter

+ 9 - 12
packages/extra/syslog/systemlog.pp

@@ -128,12 +128,12 @@ const
   function LOG_MASK(pri : longint) : longint;
   function LOG_UPTO(pri : longint) : longint;
 
-  procedure closelog;cdecl;
+  procedure closelog;cdecl;external;
+  procedure openlog(__ident:pchar; __option:longint; __facilit:longint);cdecl;external;
+  function setlogmask(__mask:longint):longint;cdecl;external;
+  procedure syslog(__pri:longint; __fmt:pchar; args:array of const);cdecl;external;
+//   procedure vsyslog(__pri:longint; __fmt:pchar; __ap:_BSD_VA_LIST_);cdecl;external;
 
-  procedure openlog(__ident:pchar; __option:longint; __facilit:longint);cdecl;
-  function setlogmask(__mask:longint):longint;cdecl;
-  procedure syslog(__pri:longint; __fmt:pchar; args:array of const);cdecl;
-//  procedure vsyslog(__pri:longint; __fmt:pchar; __ap:_BSD_VA_LIST_);cdecl;
 
   implementation
 
@@ -163,16 +163,13 @@ const
        LOG_UPTO:=(1 shl (pri + 1)) - 1;
     end;
 
-  procedure closelog;cdecl;external;
-  procedure openlog(__ident:pchar; __option:longint; __facilit:longint);cdecl;external;
-  function setlogmask(__mask:longint):longint;cdecl;external;
-  procedure syslog(__pri:longint; __fmt:pchar; args:array of const);cdecl;external;
-//   procedure vsyslog(__pri:longint; __fmt:pchar; __ap:_BSD_VA_LIST_);cdecl;external;
-
 end.
 {
   $Log$
-  Revision 1.2  2002-09-07 15:43:06  peter
+  Revision 1.3  2004-11-21 16:33:56  peter
+    * external fixes
+
+  Revision 1.2  2002/09/07 15:43:06  peter
     * old logs removed and tabs fixed
 
   Revision 1.1  2002/01/29 17:55:22  peter

+ 2 - 4
packages/extra/unixutil/unixutils.pp

@@ -98,7 +98,8 @@ Procedure ReName(Const OldName,NewName : String);
 Function  Access(Const FileName : String; Mode :Integer) : Boolean;
 Procedure Glob(Const Pattern : String; Flags : TGlobFlags; List : TStrings);
 // Globfree call with correct calling conventions.
-Procedure globfree(__pglob: PGlobData);cdecl;
+Procedure globfree(__pglob: PGlobData);cdecl;external 'libc.so.6' name 'globfree';
+
 Function  OpenDir(Const Dir : String) : PDirectoryStream;
 Function  FNMatch(Const Pattern,Name : String; Flags : TFnmFlags) : Boolean;
 Procedure GetDirectoryListing(Const Dir : String; List : TStrings);overload;
@@ -232,9 +233,6 @@ begin
 end;
 
 
-Procedure globfree(__pglob: PGlobData);cdecl;external 'libc.so.6' name 'globfree';
-
-
 Procedure Stat(Const FileName : String; Var StatInfo : TStatBuf); 
 
 begin

+ 4 - 8
rtl/i386/strings.inc

@@ -165,13 +165,6 @@ end;
 {$endif FPC_UNIT_HAS_STRLCOPY}
 
 
-{$ifndef FPC_UNIT_HAS_STRLEN}
-{$define FPC_UNIT_HAS_STRLEN}
-function strlen(p : pchar) : longint;assembler;
-{$i strlen.inc}
-{$endif FPC_UNIT_HAS_STRLEN}
-
-
 {$ifndef FPC_UNIT_HAS_STREND}
 {$define FPC_UNIT_HAS_STREND}
 function strend(p : pchar) : pchar;assembler;
@@ -635,7 +628,10 @@ end;
 
 {
   $Log$
-  Revision 1.16  2004-11-04 20:57:33  peter
+  Revision 1.17  2004-11-21 16:33:55  peter
+    * external fixes
+
+  Revision 1.16  2004/11/04 20:57:33  peter
   fixed result of strlcopy
 
   Revision 1.15  2004/06/13 10:49:50  florian

+ 4 - 7
rtl/i386/stringss.inc

@@ -16,12 +16,6 @@
  **********************************************************************}
 
 
-{$ifndef FPC_UNIT_HAS_STRPAS}
-{$define FPC_UNIT_HAS_STRPAS}
-function strpas(p : pchar) : string; assembler;
-{$i strpas.inc}
-{$endif FPC_UNIT_HAS_STRPAS}
-
 {$ifndef FPC_UNIT_HAS_STRPCOPY}
 {$define FPC_UNIT_HAS_STRPCOPY}
 function strpcopy(d : pchar;const s : string) : pchar;assembler;
@@ -53,7 +47,10 @@ end;
 
 {
   $Log$
-  Revision 1.12  2004-05-01 15:26:33  jonas
+  Revision 1.13  2004-11-21 16:33:55  peter
+    * external fixes
+
+  Revision 1.12  2004/05/01 15:26:33  jonas
     * use some more string routines from libc if FPC_USE_LIBC is used
 
   Revision 1.11  2003/11/19 16:58:44  peter