diff --git a/src/kits/network/compat/libbind/Jamfile b/src/kits/network/compat/libbind/Jamfile index 0af8831dbb..216ec43bd1 100644 --- a/src/kits/network/compat/libbind/Jamfile +++ b/src/kits/network/compat/libbind/Jamfile @@ -2,10 +2,14 @@ SubDir HAIKU_TOP src kits network compat libbind ; SetSubDirSupportedPlatformsBeOSCompatible ; +LIBNETWORK_DNS_DIR = $(HAIKU_TOP) src kits network libnetwork dns ; + UseHeaders [ FDirName $(SUBDIR) headers ] : true ; UsePrivateHeaders net ; UseHeaders [ FDirName $(HAIKU_TOP) headers legacy network ] : true ; SubDirSysHdrs $(SUBDIR) ; +UseHeaders [ FDirName $(LIBNETWORK_DNS_DIR) headers ] : true ; +SubDirSysHdrs $(LIBNETWORK_DNS_DIR) ; if $(TARGET_PLATFORM) != haiku { UseHeaders [ FDirName $(HAIKU_TOP) headers posix ] : true ; @@ -24,14 +28,15 @@ SEARCH_SOURCE += [ FDirName $(HAIKU_TOP) src system libroot posix string ] ; # private sources for this port SEARCH_SOURCE += [ FDirName $(SUBDIR) src ] ; +SEARCH_SOURCE += [ FDirName $(LIBNETWORK_DNS_DIR) src ] ; # BIND sources -SEARCH_SOURCE += [ FDirName $(SUBDIR) dst ] ; -SEARCH_SOURCE += [ FDirName $(SUBDIR) inet ] ; -SEARCH_SOURCE += [ FDirName $(SUBDIR) irs ] ; -SEARCH_SOURCE += [ FDirName $(SUBDIR) isc ] ; -SEARCH_SOURCE += [ FDirName $(SUBDIR) nameser ] ; -SEARCH_SOURCE += [ FDirName $(SUBDIR) resolv ] ; +SEARCH_SOURCE += [ FDirName $(LIBNETWORK_DNS_DIR) dst ] ; +SEARCH_SOURCE += [ FDirName $(LIBNETWORK_DNS_DIR) inet ] ; +SEARCH_SOURCE += [ FDirName $(LIBNETWORK_DNS_DIR) irs ] ; +SEARCH_SOURCE += [ FDirName $(LIBNETWORK_DNS_DIR) isc ] ; +SEARCH_SOURCE += [ FDirName $(LIBNETWORK_DNS_DIR) nameser ] ; +SEARCH_SOURCE += [ FDirName $(LIBNETWORK_DNS_DIR) resolv ] ; { # Default libs include BeOS R5 libnet.so, something we don't want here! @@ -43,7 +48,7 @@ SEARCH_SOURCE += [ FDirName $(SUBDIR) resolv ] ; SubDirCcFlags $(defines) ; SubDirC++Flags $(defines) ; } - + MergeObject dst.o : dst_api.c diff --git a/src/kits/network/compat/libbind/headers/pthread_emu.h b/src/kits/network/compat/libbind/headers/pthread_emu.h deleted file mode 100644 index 5a96ea5d0b..0000000000 --- a/src/kits/network/compat/libbind/headers/pthread_emu.h +++ /dev/null @@ -1,27 +0,0 @@ -#ifndef PTHREAD_EMU_H -#define PTHREAD_EMU_H - -#ifdef __cplusplus -extern "C" { -#endif - -#include -#include -#include - - -typedef int32 pthread_key_t; - - -extern pthread_mutex_t pthread_mutex_static_initializer(void); - -extern int pthread_key_create(pthread_key_t *key, void (*destructor)(void *)); -extern int pthread_setspecific(pthread_key_t key, void *value); -extern void *pthread_getspecific(pthread_key_t key); - - -#ifdef __cplusplus -} -#endif - -#endif /* PTHREAD_EMU_H */ diff --git a/src/kits/network/compat/libbind/irs/gai_strerror.c b/src/kits/network/compat/libbind/irs/gai_strerror.c index 1cfce4f0fe..cc76ca86e6 100644 --- a/src/kits/network/compat/libbind/irs/gai_strerror.c +++ b/src/kits/network/compat/libbind/irs/gai_strerror.c @@ -20,7 +20,7 @@ #include #ifdef DO_PTHREADS -#include +#include #include #endif @@ -48,7 +48,7 @@ static const int gai_nerr = (sizeof(gai_errlist)/sizeof(*gai_errlist)); #define EAI_BUFSIZE 128 #ifdef DO_PTHREADS -pthread_key_t gGaiStrerrorKey; +int32 gGaiStrerrorKey; #endif const char * diff --git a/src/kits/network/compat/libbind/irs/irs_data.c b/src/kits/network/compat/libbind/irs/irs_data.c index 22f70b19ac..0f862f4795 100644 --- a/src/kits/network/compat/libbind/irs/irs_data.c +++ b/src/kits/network/compat/libbind/irs/irs_data.c @@ -34,7 +34,7 @@ static const char rcsid[] = "$Id$"; #include #ifdef DO_PTHREADS -#include +#include #endif #include @@ -52,7 +52,7 @@ extern int h_errno; extern struct __res_state _res; #ifdef DO_PTHREADS -pthread_key_t gIRSInitKey; +int32 gIRSInitKey; #else static struct net_data *net_data; #endif diff --git a/src/kits/network/compat/libbind/port_before.h b/src/kits/network/compat/libbind/port_before.h index 72c9f67aa1..25a4758980 100644 --- a/src/kits/network/compat/libbind/port_before.h +++ b/src/kits/network/compat/libbind/port_before.h @@ -21,7 +21,6 @@ struct timezone; /* silence warning */ // CHANGED: pthread emulation #define DO_PTHREADS 1 -#include #define GETGROUPLIST_ARGS const char *name, gid_t basegid, gid_t *groups, int *ngroups #define GETNETBYADDR_ADDR_T long diff --git a/src/kits/network/compat/libbind/src/TLSInit.cpp b/src/kits/network/compat/libbind/src/TLSInit.cpp index b7b4606ff5..86e2c9187f 100644 --- a/src/kits/network/compat/libbind/src/TLSInit.cpp +++ b/src/kits/network/compat/libbind/src/TLSInit.cpp @@ -1,8 +1,9 @@ -#include +#include +#include // XXX: this is an ugly hack because we don't support mutexes -extern pthread_key_t gIRSInitKey; -extern pthread_key_t gGaiStrerrorKey; +extern int32 gIRSInitKey; +extern int32 gGaiStrerrorKey; class TLSInit { public: