SMOOTH LIKE BUTTER
This commit is contained in:
parent
eaac4f0948
commit
855cdc1344
4 changed files with 35 additions and 14 deletions
|
@ -18,7 +18,7 @@ install(TARGETS server RUNTIME DESTINATION bin/server)
|
|||
if(${CMAKE_SYSTEM_NAME} STREQUAL "Windows")
|
||||
target_link_libraries(server wsock32 ws2_32)
|
||||
elseif(${CMAKE_SYSTEM_NAME} STREQUAL "Linux")
|
||||
target_link_libraries(server dl pthread nsl resolv)
|
||||
target_link_libraries(server pthread nsl resolv)
|
||||
else()
|
||||
target_link_libraries(server dl pthread socket nsl resolv)
|
||||
target_link_libraries(server pthread socket nsl resolv)
|
||||
endif()
|
||||
|
|
|
@ -10,11 +10,8 @@
|
|||
#include <winsock2.h>
|
||||
#include <ws2tcpip.h>
|
||||
|
||||
typedef GLV_SOCK_T SOCKET;
|
||||
typedef GLV_ADDR_T SOCKADDR_
|
||||
|
||||
#define GLV_SOCK_T SOCKET
|
||||
#define GLV_ADDR_T SOCKADDR_IN
|
||||
typedef SOCKET glv_sock_t;
|
||||
typedef SOCKADDR_IN glv_addr_t;
|
||||
#else
|
||||
#include <arpa/inet.h>
|
||||
#include <errno.h>
|
||||
|
@ -25,8 +22,8 @@
|
|||
#include <sys/socket.h>
|
||||
#include <unistd.h>
|
||||
|
||||
#define GLV_SOCK_T int
|
||||
#define GLV_ADDR_T struct sockaddr_in
|
||||
typedef int glv_sock_t;
|
||||
typedef struct sockaddr_in glv_addr_t;
|
||||
#endif
|
||||
|
||||
#include <stdint.h>
|
||||
|
@ -35,14 +32,16 @@
|
|||
#define GLV_TCP_FLAG_NBIO 2
|
||||
|
||||
typedef struct {
|
||||
glv_sock_t socket;
|
||||
glv_addr_t addr;
|
||||
uint32_t flags;
|
||||
} tcp_t;
|
||||
} glv_tcp_t;
|
||||
|
||||
tcp_t* tcp_create_server();
|
||||
tcp_t* tcp_create_client();
|
||||
glv_tcp_t* glv_tcp_create_server();
|
||||
glv_tcp_t* glv_tcp_create_client();
|
||||
|
||||
|
||||
|
||||
void tcp_destroy(tcp_t* socket);
|
||||
void glv_tcp_destroy(glv_tcp_t* socket);
|
||||
|
||||
#endif
|
||||
|
|
|
@ -1,2 +1,4 @@
|
|||
#ifdef _WIN32
|
||||
#include "tcp.h"
|
||||
|
||||
#endif
|
||||
|
|
|
@ -1,4 +1,24 @@
|
|||
#ifndef GLV_UTIL_THREAD_H
|
||||
#define GLV_UTIL_THREAD_H
|
||||
|
||||
#ifdef _WIN32
|
||||
#define WIN32_LEAN_AND_MEAN
|
||||
#ifdef __MINGW32__
|
||||
#undef _WIN32_WINNT
|
||||
#define _WIN32_WINNT _WIN32_WINNT_WIN8
|
||||
#endif
|
||||
#include <windows.h>
|
||||
|
||||
typedef HANDLE glv_thread_t;
|
||||
typedef HANDLE glv_mutex_t;
|
||||
#else
|
||||
#include <pthread.h>
|
||||
|
||||
typedef pthread_t glv_thread_t;
|
||||
typedef pthread_mutex_t glv_mutex_t;
|
||||
#endif
|
||||
|
||||
glv_thread_t* glv_thread_create();
|
||||
void glv_thread_destroy(glv_thread_t* thread);
|
||||
|
||||
#endif
|
||||
|
|
Reference in a new issue