From 5203ecdadcf6f6775145e5c302194ac55781ecaf Mon Sep 17 00:00:00 2001 From: Jan Vidar Krey Date: Fri, 28 Aug 2009 16:18:18 +0200 Subject: [PATCH] Split uhub.h --- GNUmakefile | 60 ++++++++---------------- src/system.h | 128 +++++++++++++++++++++++++++++++++++++++++++++++++++ src/uhub.h | 109 ++----------------------------------------- 3 files changed, 150 insertions(+), 147 deletions(-) create mode 100644 src/system.h diff --git a/GNUmakefile b/GNUmakefile index 17425c6..b5752fc 100644 --- a/GNUmakefile +++ b/GNUmakefile @@ -139,53 +139,29 @@ libuhub_SOURCES := \ src/util/list.c \ src/util/log.c \ src/util/memory.c \ - src/adc/message.c \ src/util/misc.c \ src/core/netevent.c \ src/network/connection.c \ src/network/network.c \ src/util/rbtree.c \ src/core/route.c \ - src/adc/sid.c \ src/util/tiger.c \ src/core/user.c \ src/core/usermanager.c -uhub_SOURCES := src/core/main.c +libadc_common_SOURCES := \ + src/adc/message.c \ + src/adc/sid.c -libucadc_SOURCES := src/tools/adcclient.c +libadc_client_SOURCES := \ + src/tools/adcclient.c + +uhub_SOURCES := src/core/main.c adcrush_SOURCES := src/tools/adcrush.c admin_SOURCES := src/tools/admin.c -uhub_HEADERS := \ - src/adc/adcconst.h \ - src/core/auth.h \ - src/core/config.h \ - src/core/eventid.h \ - src/core/eventqueue.h \ - src/core/hub.h \ - src/core/hubevent.h \ - src/core/hubio.h \ - src/core/inf.h \ - src/util/ipcalc.h \ - src/util/list.h \ - src/util/log.h \ - src/util/memory.h \ - src/adc/message.h \ - src/util/misc.h \ - src/core/netevent.h \ - src/network/connection.h \ - src/network/network.h \ - src/util/rbtree.h \ - src/core/route.h \ - src/adc/sid.h \ - src/util/tiger.h \ - src/uhub.h \ - src/core/user.h \ - src/core/usermanager.h - autotest_SOURCES := \ autotest/test_message.tcc \ autotest/test_list.tcc \ @@ -201,13 +177,15 @@ autotest_SOURCES := \ autotest_OBJECTS = autotest.o # Source to objects -libuhub_OBJECTS := $(libuhub_SOURCES:.c=.o) -libucadc_OBJECTS:= $(libucadc_SOURCES:.c=.o) -uhub_OBJECTS := $(uhub_SOURCES:.c=.o) -adcrush_OBJECTS := $(adcrush_SOURCES:.c=.o) -admin_OBJECTS := $(admin_SOURCES:.c=.o) +libuhub_OBJECTS := $(libuhub_SOURCES:.c=.o) +libadc_client_OBJECTS := $(libadc_client_SOURCES:.c=.o) +libadc_common_OBJECTS := $(libadc_common_SOURCES:.c=.o) -all_OBJECTS := $(libuhub_OBJECTS) $(uhub_OBJECTS) $(adcrush_OBJECTS) $(autotest_OBJECTS) $(admin_OBJECTS) +uhub_OBJECTS := $(uhub_SOURCES:.c=.o) +adcrush_OBJECTS := $(adcrush_SOURCES:.c=.o) +admin_OBJECTS := $(admin_SOURCES:.c=.o) + +all_OBJECTS := $(libuhub_OBJECTS) $(uhub_OBJECTS) $(adcrush_OBJECTS) $(autotest_OBJECTS) $(admin_OBJECTS) $(libadc_common_OBJECTS) $(libadc_client_OBJECTS) LIBUHUB=libuhub.a LIBUCADC=libucadc.a @@ -221,13 +199,13 @@ autotest_BINARY=autotest/test$(BIN_EXT) all: $(uhub_BINARY) -$(adcrush_BINARY): $(LIBUHUB) $(adcrush_OBJECTS) +$(adcrush_BINARY): $(adcrush_OBJECTS) $(libuhub_OBJECTS) $(libadc_common_OBJECTS) $(libadc_client_OBJECTS) $(MSG_LD) $(CC) -o $@ $^ $(LDFLAGS) $(LDLIBS) -$(admin_BINARY): $(admin_OBJECTS) $(libucadc_OBJECTS) $(libuhub_OBJECTS) +$(admin_BINARY): $(admin_OBJECTS) $(libuhub_OBJECTS) $(libadc_common_OBJECTS) $(libadc_client_OBJECTS) $(MSG_LD) $(CC) -o $@ $^ $(LDFLAGS) $(LDLIBS) -$(uhub_BINARY): $(libuhub_OBJECTS) $(uhub_OBJECTS) +$(uhub_BINARY): $(uhub_OBJECTS) $(libuhub_OBJECTS) $(libadc_common_OBJECTS) $(MSG_LD) $(CC) -o $@ $^ $(LDFLAGS) $(LDLIBS) autotest.c: $(autotest_SOURCES) @@ -236,7 +214,7 @@ autotest.c: $(autotest_SOURCES) $(autotest_OBJECTS): autotest.c $(MSG_CC) $(CC) -c $(CFLAGS) -Isrc -o $@ $< -$(autotest_BINARY): $(autotest_OBJECTS) $(libuhub_OBJECTS) +$(autotest_BINARY): $(autotest_OBJECTS) $(libuhub_OBJECTS) $(libadc_common_OBJECTS) $(libadc_client_OBJECTS) $(MSG_LD) $(CC) -o $@ $^ $(LDFLAGS) $(LDLIBS) autotest: $(autotest_BINARY) diff --git a/src/system.h b/src/system.h new file mode 100644 index 0000000..ee3fe29 --- /dev/null +++ b/src/system.h @@ -0,0 +1,128 @@ +/* + * uhub - A tiny ADC p2p connection hub + * Copyright (C) 2007-2009, Jan Vidar Krey + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#ifndef HAVE_UHUB_SYSTEM_H +#define HAVE_UHUB_SYSTEM_H + +#if USE_REGPARM && __GNUC__ >= 3 +#define REGPRM1 __attribute__((regparm(1))) +#define REGPRM2 __attribute__((regparm(2))) +#define REGPRM3 __attribute__((regparm(3))) +#else +#define REGPRM1 +#define REGPRM2 +#define REGPRM3 +#endif + +#ifndef FORCEINLINE +#if __GNUC__ < 3 +#define FORCEINLINE inline +#else +#define FORCEINLINE inline __attribute__((always_inline)) +#endif +#endif + +#ifndef _GNU_SOURCE +#define _GNU_SOURCE +#endif + +#if defined(__CYGWIN__) || defined(__MINGW32__) +#ifndef WINSOCK +#define WINSOCK +#endif +#endif + +#ifdef WINSOCK +#include +#include +#else +#include +#include +#include +#include +#include +#include +#include +#endif + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#if !defined(WIN32) +#include +#include +#include +#define HAVE_STRNDUP +#define HAVE_MEMMEM +#define HAVE_GETRLIMIT +#endif + +/* printf and size_t support */ +#if defined(WIN32) +/* Windows uses %Iu for size_t */ +#define PRINTF_SIZE_T "%Iu" +#else +#define PRINTF_SIZE_T "%zu" +#endif + +#ifdef SSL_SUPPORT +#include +#include +#endif + +#include "../version.h" + +#define uhub_assert assert + +#include + +#if defined(__APPLE__) || defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__) || defined(__sun__) +#undef HAVE_STRNDUP +#undef HAVE_MEMMEM +#endif + +#ifdef MSG_NOSIGNAL +#define UHUB_SEND_SIGNAL MSG_NOSIGNAL +#else +#ifdef MSG_NOPIPE +#define UHUB_SEND_SIGNAL MSG_NOPIPE +#else +#define UHUB_SEND_SIGNAL 0 +#endif +#endif + +#ifndef INET6_ADDRSTRLEN +#define INET6_ADDRSTRLEN 46 +#endif + +#define MIN(a, b) ((a) < (b) ? (a) : (b)) +#define MAX(a, b) ((a) > (b) ? (a) : (b)) + + +#endif /* HAVE_UHUB_SYSTEM_H */ diff --git a/src/uhub.h b/src/uhub.h index 09d6ce1..4f8e2aa 100644 --- a/src/uhub.h +++ b/src/uhub.h @@ -25,103 +25,7 @@ /* #define MEMORY_DEBUG */ /* #define DEBUG_SENDQ 1 */ -#if USE_REGPARM && __GNUC__ >= 3 -#define REGPRM1 __attribute__((regparm(1))) -#define REGPRM2 __attribute__((regparm(2))) -#define REGPRM3 __attribute__((regparm(3))) -#else -#define REGPRM1 -#define REGPRM2 -#define REGPRM3 -#endif - -#ifndef FORCEINLINE -#if __GNUC__ < 3 -#define FORCEINLINE inline -#else -#define FORCEINLINE inline __attribute__((always_inline)) -#endif -#endif - - -#ifndef _GNU_SOURCE -#define _GNU_SOURCE -#endif - -#if defined(__CYGWIN__) || defined(__MINGW32__) -#ifndef WINSOCK -#define WINSOCK -#endif -#endif - -#ifdef WINSOCK -#include -#include -#else -#include -#include -#include -#include -#include -#include -#include -#endif - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#if !defined(WIN32) -#include -#include -#include -#define HAVE_STRNDUP -#define HAVE_MEMMEM -#define HAVE_GETRLIMIT -#endif - -/* printf and size_t support */ -#if defined(WIN32) -/* Windows uses %Iu for size_t */ -#define PRINTF_SIZE_T "%Iu" -#else -#define PRINTF_SIZE_T "%zu" -#endif - -#ifdef SSL_SUPPORT -#include -#include -#endif - -#include "../version.h" - -#define uhub_assert assert - -#include - -#if defined(__APPLE__) || defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__) || defined(__sun__) -#undef HAVE_STRNDUP -#undef HAVE_MEMMEM -#endif - -#ifdef MSG_NOSIGNAL -#define UHUB_SEND_SIGNAL MSG_NOSIGNAL -#else -#ifdef MSG_NOPIPE -#define UHUB_SEND_SIGNAL MSG_NOPIPE -#else -#define UHUB_SEND_SIGNAL 0 -#endif -#endif +#include "system.h" #define SERVER_PORT 1511 #define SERVER_ADDR_IPV6 "::" @@ -154,19 +58,12 @@ #define MAX_RECV_BUF 65535 #define MAX_SEND_BUF 65535 -#ifndef INET6_ADDRSTRLEN -#define INET6_ADDRSTRLEN 46 -#endif - -#include "adc/adcconst.h" - -#define MIN(a, b) ((a) < (b) ? (a) : (b)) -#define MAX(a, b) ((a) > (b) ? (a) : (b)) - #ifdef __cplusplus extern "C" { #endif +#include "adc/adcconst.h" + #include "util/ipcalc.h" #include "util/list.h" #include "util/log.h"