Ticket #9: 200_dll.patch

File 200_dll.patch, 19.6 KB (added by hsattler, 17 months ago)

proper DLL(windows) and gcc visibility(linux) support

  • openobex-anoncvs

    old new  
    3535 
    3636#ifdef _WIN32 
    3737#include <winsock2.h> 
     38#ifndef OBEX_STATIC_LIB 
     39#define LIB_SYMBOL __declspec(dllimport) 
     40#endif 
     41 
    3842#else 
    3943#include <sys/socket.h> 
    4044#endif 
    4145 
     46#ifndef LIB_SYMBOL 
     47#define LIB_SYMBOL 
     48#endif 
     49 
    4250/* Hum... This would need to be autogenerated from configure, 
    4351 * I hate hardcoding version numbers. Jean II */ 
    4452#define OPENOBEX_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c)) 
     
    6169/* 
    6270 *  OBEX API 
    6371 */ 
    64 obex_t *OBEX_Init(int transport, obex_event_t eventcb, unsigned int flags); 
    65 void    OBEX_Cleanup(obex_t *self); 
    66 void OBEX_SetUserData(obex_t *self, void * data); 
    67 void * OBEX_GetUserData(obex_t *self); 
    68 void OBEX_SetUserCallBack(obex_t *self, obex_event_t eventcb, void * data); 
    69 int OBEX_SetTransportMTU(obex_t *self, uint16_t mtu_rx, uint16_t mtu_tx_max); 
    70 int OBEX_GetFD(obex_t *self); 
    71  
    72 int OBEX_RegisterCTransport(obex_t *self, obex_ctrans_t *ctrans); 
    73 void OBEX_SetCustomData(obex_t *self, void * data); 
    74 void * OBEX_GetCustomData(obex_t *self); 
    75  
    76 int    OBEX_TransportConnect(obex_t *self, struct sockaddr *saddr, int addlen); 
    77 int    OBEX_TransportDisconnect(obex_t *self); 
    78 int    OBEX_CustomDataFeed(obex_t *self, uint8_t *inputbuf, int actual); 
    79 int    OBEX_HandleInput(obex_t *self, int timeout); 
    80  
    81 int    OBEX_ServerRegister(obex_t *self, struct sockaddr *saddr, int addrlen); 
    82 obex_t *OBEX_ServerAccept(obex_t *server, obex_event_t eventcb, void * data); 
    83 int    OBEX_Request(obex_t *self, obex_object_t *object); 
    84 int    OBEX_CancelRequest(obex_t *self, int nice); 
    85 int    OBEX_SuspendRequest(obex_t *self, obex_object_t *object); 
    86 int    OBEX_ResumeRequest(obex_t *self); 
    87  
    88 obex_object_t   *OBEX_ObjectNew(obex_t *self, uint8_t cmd); 
    89 int             OBEX_ObjectDelete(obex_t *self, obex_object_t *object); 
    90  
    91 int             OBEX_ObjectAddHeader(obex_t *self, obex_object_t *object, uint8_t hi,  
    92                         obex_headerdata_t hv, uint32_t hv_size, unsigned int flags); 
    93 int OBEX_ObjectGetNextHeader(obex_t *self, obex_object_t *object, uint8_t *hi, 
    94                                         obex_headerdata_t *hv, 
    95                                         uint32_t *hv_size); 
    96 int OBEX_ObjectReParseHeaders(obex_t *self, obex_object_t *object); 
    97 int OBEX_ObjectSetRsp(obex_object_t *object, uint8_t rsp, uint8_t lastrsp); 
    98  
    99 int OBEX_ObjectGetNonHdrData(obex_object_t *object, uint8_t **buffer); 
    100 int OBEX_ObjectSetNonHdrData(obex_object_t *object, const uint8_t *buffer, unsigned int len); 
    101 int OBEX_ObjectSetHdrOffset(obex_object_t *object, unsigned int offset); 
    102 int OBEX_ObjectReadStream(obex_t *self, obex_object_t *object, const uint8_t **buf); 
    103 int OBEX_ObjectGetCommand(obex_t *self, obex_object_t *object); 
     72LIB_SYMBOL obex_t * OBEX_Init(int transport, obex_event_t eventcb, unsigned int flags); 
     73LIB_SYMBOL void     OBEX_Cleanup(obex_t *self); 
     74LIB_SYMBOL void     OBEX_SetUserData(obex_t *self, void * data); 
     75LIB_SYMBOL void *   OBEX_GetUserData(obex_t *self); 
     76LIB_SYMBOL void     OBEX_SetUserCallBack(obex_t *self, obex_event_t eventcb, void * data); 
     77LIB_SYMBOL int      OBEX_SetTransportMTU(obex_t *self, uint16_t mtu_rx, uint16_t mtu_tx_max); 
     78LIB_SYMBOL int      OBEX_GetFD(obex_t *self); 
     79 
     80LIB_SYMBOL int    OBEX_RegisterCTransport(obex_t *self, obex_ctrans_t *ctrans); 
     81LIB_SYMBOL void   OBEX_SetCustomData(obex_t *self, void * data); 
     82LIB_SYMBOL void * OBEX_GetCustomData(obex_t *self); 
     83 
     84LIB_SYMBOL int OBEX_TransportConnect(obex_t *self, struct sockaddr *saddr, int addlen); 
     85LIB_SYMBOL int OBEX_TransportDisconnect(obex_t *self); 
     86LIB_SYMBOL int OBEX_CustomDataFeed(obex_t *self, uint8_t *inputbuf, int actual); 
     87LIB_SYMBOL int OBEX_HandleInput(obex_t *self, int timeout); 
     88 
     89LIB_SYMBOL int      OBEX_ServerRegister(obex_t *self, struct sockaddr *saddr, int addrlen); 
     90LIB_SYMBOL obex_t * OBEX_ServerAccept(obex_t *server, obex_event_t eventcb, void * data); 
     91 
     92LIB_SYMBOL int OBEX_Request(obex_t *self, obex_object_t *object); 
     93LIB_SYMBOL int OBEX_CancelRequest(obex_t *self, int nice); 
     94LIB_SYMBOL int OBEX_SuspendRequest(obex_t *self, obex_object_t *object); 
     95LIB_SYMBOL int OBEX_ResumeRequest(obex_t *self); 
     96 
     97LIB_SYMBOL obex_object_t * OBEX_ObjectNew(obex_t *self, uint8_t cmd); 
     98LIB_SYMBOL int             OBEX_ObjectDelete(obex_t *self, obex_object_t *object); 
     99 
     100LIB_SYMBOL int OBEX_ObjectAddHeader(obex_t *self, obex_object_t *object, 
     101                                    uint8_t hi, obex_headerdata_t hv, uint32_t hv_size, 
     102                                    unsigned int flags); 
     103LIB_SYMBOL int OBEX_ObjectGetNextHeader(obex_t *self, obex_object_t *object, 
     104                                        uint8_t *hi, obex_headerdata_t *hv, uint32_t *hv_size); 
     105LIB_SYMBOL int OBEX_ObjectReParseHeaders(obex_t *self, obex_object_t *object); 
     106LIB_SYMBOL int OBEX_ObjectSetRsp(obex_object_t *object, uint8_t rsp, uint8_t lastrsp); 
     107 
     108LIB_SYMBOL int OBEX_ObjectGetNonHdrData(obex_object_t *object, uint8_t **buffer); 
     109LIB_SYMBOL int OBEX_ObjectSetNonHdrData(obex_object_t *object, const uint8_t *buffer, unsigned int len); 
     110LIB_SYMBOL int OBEX_ObjectSetHdrOffset(obex_object_t *object, unsigned int offset); 
     111LIB_SYMBOL int OBEX_ObjectReadStream(obex_t *self, obex_object_t *object, const uint8_t **buf); 
     112LIB_SYMBOL int OBEX_ObjectGetCommand(obex_t *self, obex_object_t *object); 
    104113 
    105 int OBEX_UnicodeToChar(uint8_t *c, const uint8_t *uc, int size); 
    106 int OBEX_CharToUnicode(uint8_t *uc, const uint8_t *c, int size); 
     114LIB_SYMBOL int OBEX_UnicodeToChar(uint8_t *c, const uint8_t *uc, int size); 
     115LIB_SYMBOL int OBEX_CharToUnicode(uint8_t *uc, const uint8_t *c, int size); 
    107116 
    108 char *OBEX_ResponseToString(int rsp); 
     117LIB_SYMBOL char *OBEX_ResponseToString(int rsp); 
    109118 
    110119/* 
    111120 * This function is deprecated and will be removed in OpenOBEX 1.1.0 
     
    113122 * Please use the OBEX_ResponseToString instead. 
    114123 * 
    115124 */ 
    116 char* OBEX_GetResponseMessage(obex_t *self, int rsp); 
     125LIB_SYMBOL char* OBEX_GetResponseMessage(obex_t *self, int rsp); 
    117126 
    118127/* 
    119128 * TcpOBEX API (IPv4/IPv6) 
    120129 */ 
    121  int TcpOBEX_ServerRegister(obex_t *self, struct sockaddr *addr, int addrlen); 
    122  int TcpOBEX_TransportConnect(obex_t *self, struct sockaddr *addr, int addrlen); 
     130LIB_SYMBOL int TcpOBEX_ServerRegister(obex_t *self, struct sockaddr *addr, int addrlen); 
     131LIB_SYMBOL int TcpOBEX_TransportConnect(obex_t *self, struct sockaddr *addr, int addrlen); 
    123132 
    124133/* 
    125134 * InOBEX API (deprecated) 
    126135 */ 
    127  int InOBEX_ServerRegister(obex_t *self); 
    128  int InOBEX_TransportConnect(obex_t *self, struct sockaddr *saddr, int addrlen); 
     136LIB_SYMBOL int InOBEX_ServerRegister(obex_t *self); 
     137LIB_SYMBOL int InOBEX_TransportConnect(obex_t *self, struct sockaddr *saddr, int addrlen); 
    129138 
    130139/* 
    131140 * IrOBEX API  
    132141 */ 
    133  int IrOBEX_ServerRegister(obex_t *self, const char *service); 
    134  int IrOBEX_TransportConnect(obex_t *self, const char *service); 
     142LIB_SYMBOL int IrOBEX_ServerRegister(obex_t *self, const char *service); 
     143LIB_SYMBOL int IrOBEX_TransportConnect(obex_t *self, const char *service); 
    135144 
    136145/* 
    137146 * Bluetooth OBEX API 
    138147 */ 
    139  int BtOBEX_ServerRegister(obex_t *self, bdaddr_t *src, uint8_t channel); 
    140  int BtOBEX_TransportConnect(obex_t *self, bdaddr_t *src, bdaddr_t *dst, uint8_t channel); 
     148LIB_SYMBOL int BtOBEX_ServerRegister(obex_t *self, bdaddr_t *src, uint8_t channel); 
     149LIB_SYMBOL int BtOBEX_TransportConnect(obex_t *self, bdaddr_t *src, bdaddr_t *dst, uint8_t channel); 
    141150 
    142151/* 
    143152 * OBEX File API 
    144153 */ 
    145 int FdOBEX_TransportSetup(obex_t *self, int rfd, int wfd, int mtu); 
     154LIB_SYMBOL int FdOBEX_TransportSetup(obex_t *self, int rfd, int wfd, int mtu); 
    146155 
    147156/*   
    148157 * OBEX interface discovery API  
    149158 */ 
    150  int OBEX_FindInterfaces(obex_t *self, obex_interface_t **intf); 
    151  int OBEX_InterfaceConnect(obex_t *self, obex_interface_t *intf); 
    152  void OBEX_FreeInterfaces(obex_t *self); 
     159LIB_SYMBOL int OBEX_FindInterfaces(obex_t *self, obex_interface_t **intf); 
     160LIB_SYMBOL int OBEX_InterfaceConnect(obex_t *self, obex_interface_t *intf); 
     161LIB_SYMBOL void OBEX_FreeInterfaces(obex_t *self); 
    153162 
    154163#ifdef __cplusplus 
    155164} 
  • openobex-anoncvs

    old new  
    4040#ifdef _WIN32 
    4141#include <winsock2.h> 
    4242#define ESOCKTNOSUPPORT 1 
    43 #else /* _WIN32 */ 
     43#ifdef DLL_EXPORT 
     44#define LIB_SYMBOL __declspec(dllexport) 
     45#endif 
    4446 
     47#else /* _WIN32 */ 
    4548#include <fcntl.h> 
    4649#include <signal.h> 
    4750#include <unistd.h> 
     51#ifdef HAVE_VISIBILITY 
     52#define LIB_SYMBOL __attribute__ ((visibility("default"))) 
     53#endif 
     54#endif 
     55 
     56#ifndef LIB_SYMBOL 
     57#define LIB_SYMBOL 
    4858#endif 
    4959 
    5060#include "obex_main.h" 
     
    6979typedef char *bdaddr_t; 
    7080#endif 
    7181 
     82LIB_SYMBOL 
    7283void OBEX_FreeInterfaces(obex_t *self); 
    7384 
    7485/** 
     
    90101 * 
    91102 * Returns an OBEX handle or %NULL on error. 
    92103 */ 
     104LIB_SYMBOL 
    93105obex_t *OBEX_Init(int transport, obex_event_t eventcb, unsigned int flags) 
    94106{ 
    95107        obex_t *self; 
     
    182194 * Call this function directly after OBEX_Init if you are using 
    183195 * a custom transport. 
    184196 */ 
     197LIB_SYMBOL 
    185198int OBEX_RegisterCTransport(obex_t *self, obex_ctrans_t *ctrans) 
    186199{ 
    187200        obex_return_val_if_fail(self != NULL, -1); 
     
    197210 * 
    198211 * Close down an OBEX instance. 
    199212 */ 
     213LIB_SYMBOL 
    200214void OBEX_Cleanup(obex_t *self) 
    201215{ 
    202216        obex_return_if_fail(self != NULL); 
     
    220234 * @self: OBEX handle 
    221235 * @data: It's all up to you! 
    222236 */ 
     237LIB_SYMBOL 
    223238void OBEX_SetUserData(obex_t *self, void * data) 
    224239{ 
    225240        obex_return_if_fail(self != NULL); 
     
    232247 * 
    233248 * Returns userdata 
    234249 */ 
     250LIB_SYMBOL 
    235251void * OBEX_GetUserData(obex_t *self) 
    236252{ 
    237253        obex_return_val_if_fail(self != NULL, 0); 
     
    244260 * @eventcb: Function pointer to your new event callback. 
    245261 * @data: Pointer to the new user data to pass to the new callback (optional) 
    246262 */ 
     263LIB_SYMBOL 
    247264void OBEX_SetUserCallBack(obex_t *self, obex_event_t eventcb, void * data) 
    248265{ 
    249266        obex_return_if_fail(self != NULL); 
     
    269286 * 
    270287 * Returns -1 on error. 
    271288 */ 
     289LIB_SYMBOL 
    272290int OBEX_SetTransportMTU(obex_t *self, uint16_t mtu_rx, uint16_t mtu_tx_max) 
    273291{ 
    274292        obex_return_val_if_fail(self != NULL, -EFAULT); 
     
    311329 * 
    312330 * Returns -1 on error. 
    313331 */ 
     332LIB_SYMBOL 
    314333int OBEX_ServerRegister(obex_t *self, struct sockaddr *saddr, int addrlen) 
    315334{ 
    316335        DEBUG(3, "\n"); 
     
    343362 * 
    344363 * Returns the client instance or %NULL for error. 
    345364 */ 
     365LIB_SYMBOL 
    346366obex_t *OBEX_ServerAccept(obex_t *server, obex_event_t eventcb, void * data) 
    347367{ 
    348368        obex_t *self; 
     
    431451 * Like select() this function returns -1 on error, 0 on timeout or 
    432452 * positive on success. 
    433453 */ 
     454LIB_SYMBOL 
    434455int OBEX_HandleInput(obex_t *self, int timeout) 
    435456{ 
    436457        DEBUG(4, "\n"); 
     
    445466 * @inputbuf: Pointer to custom data 
    446467 * @actual: Length of buffer 
    447468 */ 
     469LIB_SYMBOL 
    448470int OBEX_CustomDataFeed(obex_t *self, uint8_t *inputbuf, int actual) 
    449471{ 
    450472        DEBUG(3, "\n"); 
     
    464486 * 
    465487 * Returns -1 on error. 
    466488 */ 
     489LIB_SYMBOL 
    467490int OBEX_TransportConnect(obex_t *self, struct sockaddr *saddr, int addrlen) 
    468491{ 
    469492        DEBUG(4, "\n"); 
     
    481504 * OBEX_TransportDisconnect - Disconnect transport 
    482505 * @self: OBEX handle 
    483506 */ 
     507LIB_SYMBOL 
    484508int OBEX_TransportDisconnect(obex_t *self) 
    485509{ 
    486510        DEBUG(4, "\n"); 
     
    508532 * This mean that after receiving an incomming connection, you need to 
    509533 * call this function again. 
    510534 */ 
     535LIB_SYMBOL 
    511536int OBEX_GetFD(obex_t *self) 
    512537{ 
    513538        obex_return_val_if_fail(self != NULL, -1); 
     
    523548 * 
    524549 * Returns negative on error. 
    525550 */ 
     551LIB_SYMBOL 
    526552int OBEX_Request(obex_t *self, obex_object_t *object) 
    527553{ 
    528554        DEBUG(4, "\n"); 
     
    551577 * 
    552578 * 
    553579 */ 
     580LIB_SYMBOL 
    554581int OBEX_CancelRequest(obex_t *self, int nice) 
    555582{ 
    556583        obex_return_val_if_fail(self != NULL, -1); 
     
    562589 * @self: OBEX handle 
    563590 * @object: object to suspend (NULL to suspend currently transfered object) 
    564591 */ 
     592LIB_SYMBOL 
    565593int OBEX_SuspendRequest(obex_t *self, obex_object_t *object) 
    566594{ 
    567595        obex_return_val_if_fail(object != NULL || self->object != NULL, -1); 
     
    572600 * OBEX_ResumeRequest - Resume transfer of an object 
    573601 * @self: OBEX handle 
    574602 */ 
     603LIB_SYMBOL 
    575604int OBEX_ResumeRequest(obex_t *self) 
    576605{ 
    577606        obex_return_val_if_fail(self->object != NULL, -1); 
     
    585614 * 
    586615 * Returns a pointer to a new OBEX Object or %NULL on error. 
    587616 */ 
     617LIB_SYMBOL 
    588618obex_object_t *OBEX_ObjectNew(obex_t *self, uint8_t cmd) 
    589619{ 
    590620        obex_object_t *object; 
     
    615645 * Note that as soon as you have passed an object to the lib using 
    616646 * OBEX_Request(), you shall not delete it yourself. 
    617647 */ 
     648LIB_SYMBOL 
    618649int OBEX_ObjectDelete(obex_t *self, obex_object_t *object) 
    619650{ 
    620651        obex_return_val_if_fail(object != NULL, -1); 
     
    651682 * 
    652683 * The headers will be sent in the order you add them. 
    653684 */ 
     685LIB_SYMBOL 
    654686int OBEX_ObjectAddHeader(obex_t *self, obex_object_t *object, uint8_t hi, 
    655687                                obex_headerdata_t hv, uint32_t hv_size, 
    656688                                unsigned int flags) 
     
    675707 * 
    676708 * You will get the headers in the received order. 
    677709 */ 
     710LIB_SYMBOL 
    678711int OBEX_ObjectGetNextHeader(obex_t *self, obex_object_t *object, uint8_t *hi, 
    679712                                        obex_headerdata_t *hv, 
    680713                                        uint32_t *hv_size) 
     
    697730 * Returns 1 on success 
    698731 * Returns 0 if failed due previous parsing not completed. 
    699732 */ 
     733LIB_SYMBOL 
    700734int OBEX_ObjectReParseHeaders(obex_t *self, obex_object_t *object) 
    701735{ 
    702736        obex_return_val_if_fail(self != NULL, -1); 
     
    722756 * 
    723757 * Returns the number of bytes in buffer, or 0 for end-of-stream. 
    724758 */ 
     759LIB_SYMBOL 
    725760int OBEX_ObjectReadStream(obex_t *self, obex_object_t *object, const uint8_t **buf) 
    726761{ 
    727762        obex_return_val_if_fail(self != NULL, -1); 
     
    739774 * 
    740775 * Returns -1 on error. 
    741776 */ 
     777LIB_SYMBOL 
    742778int OBEX_ObjectSetRsp(obex_object_t *object, uint8_t rsp, uint8_t lastrsp) 
    743779{ 
    744780        obex_return_val_if_fail(object != NULL, -1); 
     
    752788 * 
    753789 * Returns the size of the buffer or -1 for error. 
    754790 */ 
     791LIB_SYMBOL 
    755792int OBEX_ObjectGetNonHdrData(obex_object_t *object, uint8_t **buffer) 
    756793{ 
    757794        obex_return_val_if_fail(object != NULL, -1); 
     
    771808 * Some commands (notably SetPath) send data before headers. Use this 
    772809 * function to set this data. 
    773810 */ 
     811LIB_SYMBOL 
    774812int OBEX_ObjectSetNonHdrData(obex_object_t *object, const uint8_t *buffer, unsigned int len) 
    775813{ 
    776814        //TODO: Check that we actually can send len bytes without violating MTU 
     
    798836 * command has data before the headers comes. You do NOT need to use this 
    799837 * function on Connect and SetPath, they are handled automatically. 
    800838 */ 
     839LIB_SYMBOL 
    801840int OBEX_ObjectSetHdrOffset(obex_object_t *object, unsigned int offset) 
    802841{ 
    803842        obex_return_val_if_fail(object != NULL, -1); 
     
    812851 * 
    813852 * Call this function to get the OBEX command of an object. 
    814853 */ 
     854LIB_SYMBOL 
    815855int OBEX_ObjectGetCommand(obex_t *self, obex_object_t *object) 
    816856{ 
    817857        obex_return_val_if_fail(object != NULL || self->object != NULL, -1); 
     
    830870 * 
    831871 * Buffers may not overlap. Returns -1 on error. 
    832872 */ 
     873LIB_SYMBOL 
    833874int OBEX_UnicodeToChar(uint8_t *c, const uint8_t *uc, int size) 
    834875{ 
    835876        int n; 
     
    857898 * 
    858899 * Buffers may not overlap. Returns -1 on error. 
    859900 */ 
     901LIB_SYMBOL 
    860902int OBEX_CharToUnicode(uint8_t *uc, const uint8_t *c, int size) 
    861903{ 
    862904        int len, n; 
     
    885927 * 
    886928 * The returned char must not be freed. Returns %NULL on error. 
    887929 */ 
     930LIB_SYMBOL 
    888931char *OBEX_ResponseToString(int rsp) 
    889932{ 
    890933        DEBUG(4, "\n"); 
     
    899942 * 
    900943 * The returned char must not be freed. Returns %NULL on error. 
    901944 */ 
     945LIB_SYMBOL 
    902946char* OBEX_GetResponseMessage(obex_t *self, int rsp) 
    903947{ 
    904948        DEBUG(4, "\n"); 
     
    922966 * multiple connections transparently (i.e. without a lookup table). 
    923967 * - Jean II 
    924968 */ 
     969LIB_SYMBOL 
    925970void OBEX_SetCustomData(obex_t *self, void * data) 
    926971{ 
    927972        obex_return_if_fail(self != NULL); 
     
    934979 * 
    935980 * Returns Custom Transport data 
    936981 */ 
     982LIB_SYMBOL 
    937983void * OBEX_GetCustomData(obex_t *self) 
    938984{ 
    939985        obex_return_val_if_fail(self != NULL, 0); 
     
    953999 * 
    9541000 * Returns -1 on error. 
    9551001 */ 
     1002LIB_SYMBOL 
    9561003int TcpOBEX_ServerRegister(obex_t *self, struct sockaddr *addr, int addrlen) 
    9571004{ 
    9581005        DEBUG(3, "\n"); 
     
    9751022 * 
    9761023 * Returns -1 on error. 
    9771024 */ 
     1025LIB_SYMBOL 
    9781026int TcpOBEX_TransportConnect(obex_t *self, struct sockaddr *addr, int addrlen) 
    9791027{ 
    9801028        DEBUG(4, "\n"); 
     
    10011049 * 
    10021050 * Returns -1 on error. 
    10031051 */ 
     1052LIB_SYMBOL 
    10041053int InOBEX_ServerRegister(obex_t *self) 
    10051054{ 
    10061055        DEBUG(3, "\n"); 
     
    10201069 * 
    10211070 * Returns -1 on error. 
    10221071 */ 
     1072LIB_SYMBOL 
    10231073int InOBEX_TransportConnect(obex_t *self, struct sockaddr *saddr, int addrlen) 
    10241074{ 
    10251075        DEBUG(4, "\n"); 
     
    10481098 * 
    10491099 * Returns -1 on error. 
    10501100 */ 
     1101LIB_SYMBOL 
    10511102int IrOBEX_ServerRegister(obex_t *self, const char *service) 
    10521103{ 
    10531104        DEBUG(3, "\n"); 
     
    10701121 * 
    10711122 * An easier connect function to use for IrDA (IrOBEX) only. 
    10721123 */ 
     1124LIB_SYMBOL 
    10731125int IrOBEX_TransportConnect(obex_t *self, const char *service) 
    10741126{ 
    10751127        DEBUG(4, "\n"); 
     
    10991151 * 
    11001152 * Returns -1 on error. 
    11011153 */ 
     1154LIB_SYMBOL 
    11021155int BtOBEX_ServerRegister(obex_t *self, bdaddr_t *src, uint8_t channel) 
    11031156{ 
    11041157        DEBUG(3, "\n"); 
     
    11221175 * 
    11231176 *  An easier connect function to use for Bluetooth (Bluetooth OBEX) only.  
    11241177 */ 
     1178LIB_SYMBOL 
    11251179int BtOBEX_TransportConnect(obex_t *self, bdaddr_t *src, bdaddr_t *dst, uint8_t channel) 
    11261180{ 
    11271181        DEBUG(4, "\n"); 
     
    11531207 *  @wfd: descriptor to write 
    11541208 *  @mtu: transport mtu: 0 - default 
    11551209 */ 
     1210LIB_SYMBOL 
    11561211int FdOBEX_TransportSetup(obex_t *self, int rfd, int wfd, int mtu) 
    11571212{ 
    11581213        DEBUG(4, "\n"); 
     
    11771232 *  An easier connect function to connect to a discovered interface (currently 
    11781233 *  USB OBEX only).  
    11791234 */ 
     1235LIB_SYMBOL 
    11801236int OBEX_InterfaceConnect(obex_t *self, obex_interface_t *intf) 
    11811237{ 
    11821238        DEBUG(4, "\n"); 
     
    12101266 * 
    12111267 *  Gets a list of OBEX interfaces, or NULL if there are none. 
    12121268 */ 
     1269LIB_SYMBOL 
    12131270int OBEX_FindInterfaces(obex_t *self, obex_interface_t **interfaces) 
    12141271{ 
    12151272        DEBUG(4, "\n"); 
     
    12381295 *  Frees memory allocated to OBEX interface structures after it has been  
    12391296 *  allocated by OBEX_FindInterfaces. 
    12401297 */ 
     1298LIB_SYMBOL 
    12411299void OBEX_FreeInterfaces(obex_t *self) 
    12421300{ 
    12431301        DEBUG(4, "\n"); 
  • openobex-anoncvs

    old new  
    2121 
    2222AC_PROG_LIBTOOL 
    2323 
     24AC_VISIBILITY 
    2425AC_CANONICAL_HOST 
    2526 
    2627AC_PATH_WIN32 
  • lib/Makefile.am

    old new  
    1717        irda.h irda_wrap.h \ 
    1818        usbobex.c usbobex.h 
    1919 
     20libopenobex_la_CFLAGS = @CFLAG_VISIBILITY@ 
     21 
    2022libopenobex_la_LDFLAGS = \ 
    2123        -no-undefined \ 
    2224        -version-info 4:0:3 \ 
  • openobex-anoncvs

    old new  
    128128        AC_SUBST(GLIB_GENMARSHAL) 
    129129]) 
    130130 
     131AC_DEFUN([AC_VISIBILITY], [ 
     132        case $host in 
     133        *-*-mingw32*) 
     134                AC_SUBST(CFLAG_VISIBILITY) 
     135                if (test "${enable_shared}" = "no"); then 
     136                   OPENOBEX_CFLAGS="-DOBEX_STATIC_LIB" 
     137                fi 
     138                AC_SUBST(OPENOBEX_CFLAGS) 
     139                ;; 
     140        *) 
     141                gl_VISIBILITY 
     142                ;; 
     143        esac 
     144]) 
     145 
    131146AC_DEFUN([AC_ARG_OPENOBEX], [ 
    132147        fortify_enable=yes 
    133148        irda_enable=yes 
  • openobex-anoncvs

    old new  
    99Requires.private: @REQUIRES@ 
    1010Libs: -L${libdir} -lopenobex 
    1111Cflags: -I${includedir} 
     12Cflags.private: @OPENOBEX_CFLAGS@