From 988d7d49691dedb240d911da4d4e79dddf3d1436 Mon Sep 17 00:00:00 2001 From: Marty Kraimer Date: Mon, 24 Jan 2000 20:55:50 +0000 Subject: [PATCH] new organization --- src/libCom/Makefile | 159 +++++++++++++++++++++++++++++-- src/libCom/env/bldEnvData.pl | 2 +- src/libCom/fdmgr/fdManager.cpp | 6 +- src/libCom/logClient/logClient.c | 9 +- 4 files changed, 158 insertions(+), 18 deletions(-) diff --git a/src/libCom/Makefile b/src/libCom/Makefile index 4705c968f..683fa054d 100644 --- a/src/libCom/Makefile +++ b/src/libCom/Makefile @@ -1,11 +1,158 @@ -# -# $Id$ -# - TOP = ../.. include $(TOP)/configure/CONFIG -DIRS += build +LIBCOM = $(TOP)/src/libComNew -include $(TOP)/configure/RULES_DIRS + +# From osi +SRC_DIRS = $(LIBCOM)/osi + + +INC += osiInterrupt.h +INC += osiRing.h +INC += osiSem.h + +INC += bsdSocketResource.h +INC += epicsAssert.h +INC += osiFindGlobalSymbol.h +INC += osiPoolStatus.h +INC += osiThread.h +INC += osiTime.h +INC += sigPipeIgnore.h +INC += tsStamp.h + +SRCS += bsdSockResource.c +SRCS += bsdSockResCom.c +SRCS += assert.c +SRCS += osiFindGlobalSymbol.c +SRCS += osiInterrupt.c +SRCS += osiPoolStatus.c +SRCS += osiRing.c +SRCS += osiSem.c +SRCS += osiThread.c +SRCS += osdTime.cpp +SRCS += osiTime.cpp +SRCS += sigPipeIgnore.c +#tsStamp code is part of osiTime and osdTime + +SRC_DIRS += $(LIBCOM)/bucketLib +INC += bucketLib.h +SRCS += bucketLib.c + +SRC_DIRS += $(LIBCOM)/calc +#following needed for locating postfixPvt.h and sCalcPostfixPvt.h +USR_CFLAGS += -I$(LIBCOM)/calc +INC += postfix.h +INC += sCalcPostfix.h +SRCS += postfix.c +SRCS += calcPerform.c +SRCS += sCalcPostfix.c +SRCS += sCalcPerform.c + +SRC_DIRS += $(LIBCOM)/cvtFast +INC += cvtFast.h +SRCS += cvtFast.c + +SRC_DIRS += $(LIBCOM)/dbmf +INC += dbmf.h +SRCS += dbmf.c + +SRC_DIRS += $(LIBCOM)/ellLib +INC += ellLib.h +SRCS += ellLib.c + +SRC_DIRS += $(LIBCOM)/env +INC += envDefs.h +SRCS += envSubr.c +SRCS += envData.c + +SRC_DIRS += $(LIBCOM)/error +INC += epicsPrint.h +INC += errMdef.h +INC += errSymTbl.h +INC += errlog.h +INC += error.h +SRCS += errlog.c +SRCS += errSymLib.c +SRCS += errSymTbl.c + +SRC_DIRS += $(LIBCOM)/fdmgr +INC += fdManager.h +INC += fdmgr.h +#SRCS += fdmgr.cpp +#SRCS += fdManager.cpp + +SRC_DIRS += $(LIBCOM)/freeList +INC += freeList.h +SRCS += freeListLib.c + +SRC_DIRS += $(LIBCOM)/gpHash +INC += gpHash.h +SRCS += gpHashLib.c + +SRC_DIRS += $(LIBCOM)/macLib +INC += macLib.h +SRCS += macCore.c +SRCS += macUtil.c + +SRC_DIRS += $(LIBCOM)/misc +INC += adjustment.h +INC += cantProceed.h +INC += epicsString.h +SRCS += adjustment.c +SRCS += cantProceed.c +SRCS += epicsString.c +SRCS += aToIPAddr.c +INC += truncateFile.h +SRCS += truncateFile.c +SRC_DIRS += $(LIBCOM)/logClient +INC += logClient.h +SRCS += logClient.c + +SRC_DIRS += $(LIBCOM)/timer +INC += osiTimer.h +SRCS += osiTimer.cpp + +# For WIN32 we supply getopt as part of libCom: +INC_WIN32 := getopt.h +SRCS_WIN32 := getopt.c +SRCS_WIN32 += dllmain.cpp + +# For RTEMS CommandInterpreter +INC_RTEMS := CommandInterpreter.h +SRCS_RTEMS := CommandInterpreter.c + +#why is this here ? +USR_CFLAGS = -D_NO_PROTO + +# Library to build: +# lib$(LIBRARY).a or ..dll/..exp/..lib +# +LIB=Com + + +# for bldErrSymTbl: +# +ERR_S_FILES += $(TOP)/src/include/asLib.h +ERR_S_FILES += $(TOP)/src/db/dbAccess.h +ERR_S_FILES += $(TOP)/src/include/devSup.h +ERR_S_FILES += $(TOP)/src/include/drvSup.h +ERR_S_FILES += $(TOP)/src/db/recSup.h +ERR_S_FILES += $(TOP)/src/dbStatic/dbStaticLib.h +ERR_S_FILES += $(LIBCOM)/error/errMdef.h +ERR_S_FILES += $(TOP)/src/cas/generic/casdef.h +ERR_S_FILES += $(TOP)/src/gdd/gddAppFuncTable.h + +include $(TOP)/configure/RULES + +# The real dependecies seem to confuse GNUmake: +# envData.c is rebuild every time... +envData.c: $(LIBCOM)/env/envDefs.h $(LIBCOM)/env/bldEnvData.pl + $(PERL) $(LIBCOM)/env/bldEnvData.pl $(CONFIG) + +errSymTbl.c: $(ERR_S_FILES) $(LIBCOM)/error/makeStatTbl.pl + $(PERL) $(LIBCOM)/error/makeStatTbl.pl $(ERR_S_FILES) + +clean:: + @$(RM) errSymTbl.c envData.c diff --git a/src/libCom/env/bldEnvData.pl b/src/libCom/env/bldEnvData.pl index 09369c02e..b9ad84aba 100644 --- a/src/libCom/env/bldEnvData.pl +++ b/src/libCom/env/bldEnvData.pl @@ -23,7 +23,7 @@ chdir $config_dir or die "cannot change dir to $config_dir"; $config_dir=cwd(); chdir $start_dir; -$SRC = "../../misc/generic/envDefs.h"; +$SRC = "../env/envDefs.h"; $env_data = "${config_dir}/CONFIG_ENV"; $site_data= "${config_dir}/CONFIG_SITE_ENV"; $out_name = "envData.c"; diff --git a/src/libCom/fdmgr/fdManager.cpp b/src/libCom/fdmgr/fdManager.cpp index 942785b0c..4b8ceffe8 100644 --- a/src/libCom/fdmgr/fdManager.cpp +++ b/src/libCom/fdmgr/fdManager.cpp @@ -49,7 +49,7 @@ #define epicsExportSharedSymbols #include "epicsAssert.h" #include "osiTimer.h" -#include "osiSleep.h" +#include "osiThread.h" #include "tsMinMax.h" #include "fdManager.h" #include "bsdSocketResource.h" @@ -178,9 +178,7 @@ epicsShareFunc void fdManager::process (double delay) * windows sockets and UNIX sockets implementation * of select() */ - if (tv.tv_sec!=0 || tv.tv_usec!=0) { - osiSleep (tv.tv_sec, tv.tv_usec); - } + if (minDelay>0.0) threadSleep(minDelay); status = 0; } else { diff --git a/src/libCom/logClient/logClient.c b/src/libCom/logClient/logClient.c index f267dc356..107894c6f 100644 --- a/src/libCom/logClient/logClient.c +++ b/src/libCom/logClient/logClient.c @@ -47,7 +47,6 @@ #include "osiSem.h" #include "osiThread.h" #include "osiSock.h" -#include "osiSleep.h" #include "epicsAssert.h" #include "errlog.h" #include "envDefs.h" @@ -416,10 +415,8 @@ LOCAL void logClientConnect (logClient *pClient) pClient->connectCount++; pClient->file = fdopen (pClient->sock, "a"); if (!pClient->file) { - static const unsigned microSecDelay = 0; - static const unsigned secDelay = 10; logClientReset (pClient); - osiSleep (secDelay, microSecDelay); + threadSleep (10.0); } pClient->connectReset = 0u; @@ -548,8 +545,6 @@ void logClientGlobalInit () epicsShareFunc logClientId epicsShareAPI logClientInit () { static const unsigned maxConnectTries = 40u; - static const unsigned microSecDelay = 50000u; - static const unsigned secDelay = 0u; unsigned connectTries = 0; logClient *pClient; logClientId id; @@ -596,7 +591,7 @@ epicsShareFunc logClientId epicsShareAPI logClientInit () semMutexGive (logClientGlobalSignal); - osiSleep (secDelay, microSecDelay); + threadSleep (50e-3); connectTries++; if (connectTries>=maxConnectTries) {