From f994944531fe063ff0f79566d528cf4dd9693b1f Mon Sep 17 00:00:00 2001 From: Andrew Johnson Date: Wed, 18 Mar 2015 11:36:06 -0500 Subject: [PATCH 1/2] libCom/posix: Remove pthread_setcanceltype() --- src/libCom/osi/os/posix/osdThread.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/src/libCom/osi/os/posix/osdThread.c b/src/libCom/osi/os/posix/osdThread.c index 0f1523549..2dc4eda8a 100644 --- a/src/libCom/osi/os/posix/osdThread.c +++ b/src/libCom/osi/os/posix/osdThread.c @@ -368,20 +368,17 @@ static void once(void) checkStatusOnce(status,"atexit"); epicsThreadOnceCalled = 1; } - + static void * start_routine(void *arg) { epicsThreadOSD *pthreadInfo = (epicsThreadOSD *)arg; int status; - int oldtype; sigset_t blockAllSig; sigfillset(&blockAllSig); pthread_sigmask(SIG_SETMASK,&blockAllSig,NULL); status = pthread_setspecific(getpthreadInfo,arg); checkStatusQuit(status,"pthread_setspecific","start_routine"); - status = pthread_setcanceltype(PTHREAD_CANCEL_ASYNCHRONOUS,&oldtype); - checkStatusQuit(status,"pthread_setcanceltype","start_routine"); status = mutexLock(&listLock); checkStatusQuit(status,"pthread_mutex_lock","start_routine"); ellAdd(&pthreadList,&pthreadInfo->node); From d927afe25786bcfaf8bfc0353e393484aaa8cf29 Mon Sep 17 00:00:00 2001 From: Andrew Johnson Date: Thu, 19 Mar 2015 10:18:23 -0500 Subject: [PATCH 2/2] Make including cfg/CONFIG* files unconditional --- configure/CONFIG | 82 +++++++++++++++++++++++++----------------------- 1 file changed, 42 insertions(+), 40 deletions(-) diff --git a/configure/CONFIG b/configure/CONFIG index 4a9624022..cf7d638fd 100644 --- a/configure/CONFIG +++ b/configure/CONFIG @@ -14,17 +14,17 @@ # ifneq ($(wildcard $(TOP)/configure/CONFIG_BASE_VERSION),) -EPICS_BASE = $(INSTALL_LOCATION) -CONFIG = $(TOP)/configure -BASE_TOP=YES + EPICS_BASE = $(INSTALL_LOCATION) + CONFIG = $(TOP)/configure + BASE_TOP=YES else -CONFIG ?= $(EPICS_BASE)/configure + CONFIG ?= $(EPICS_BASE)/configure endif # Provide a default if the user hasn't set EPICS_HOST_ARCH ifeq ($(origin EPICS_HOST_ARCH), undefined) -# NB: Must use a simply expanded variable here for performance: -EPICS_HOST_ARCH := $(shell $(CONFIG)/../startup/EpicsHostArch.pl) + # NB: We use a simply expanded variable here for performance: + EPICS_HOST_ARCH := $(shell $(CONFIG)/../startup/EpicsHostArch.pl) endif # @@ -34,8 +34,8 @@ endif -include $(CONFIG)/RELEASE.$(EPICS_HOST_ARCH) -include $(CONFIG)/RELEASE.$(EPICS_HOST_ARCH).Common ifdef T_A --include $(CONFIG)/RELEASE.Common.$(T_A) --include $(CONFIG)/RELEASE.$(EPICS_HOST_ARCH).$(T_A) + -include $(CONFIG)/RELEASE.Common.$(T_A) + -include $(CONFIG)/RELEASE.$(EPICS_HOST_ARCH).$(T_A) endif include $(CONFIG)/CONFIG_COMMON @@ -60,60 +60,62 @@ include $(CONFIG)/os/CONFIG.$(EPICS_HOST_ARCH).Common RELEASE_TOPS := $(shell $(CONVERTRELEASE) -T $(TOP) releaseTops) + ifdef T_A -# Cross compile specific definitions -# -ifneq ($(EPICS_HOST_ARCH),$(T_A)) -include $(CONFIG)/CONFIG.CrossCommon -endif + # Cross compile specific definitions + # + ifneq ($(EPICS_HOST_ARCH),$(T_A)) + include $(CONFIG)/CONFIG.CrossCommon + endif -# Target architecture specific definitions -# --include $(CONFIG)/os/CONFIG.Common.$(T_A) + # Target architecture specific definitions + # + -include $(CONFIG)/os/CONFIG.Common.$(T_A) -# Host-Target architecture specific definitions -# --include $(CONFIG)/os/CONFIG.$(EPICS_HOST_ARCH).$(T_A) + # Host-Target architecture specific definitions + # + -include $(CONFIG)/os/CONFIG.$(EPICS_HOST_ARCH).$(T_A) -# RELEASE file specific definitions -# -ifneq ($(CONFIG),$(TOP)/configure) --include $(CONFIG)/CONFIG_APP_INCLUDE -endif + # RELEASE file specific definitions + # + ifneq ($(CONFIG),$(TOP)/configure) + -include $(CONFIG)/CONFIG_APP_INCLUDE + endif + + # Site specific target and host-target definitions + # + -include $(CONFIG)/os/CONFIG_SITE.Common.$(T_A) + -include $(CONFIG)/os/CONFIG_SITE.$(EPICS_HOST_ARCH).$(T_A) + +endif # ifdef T_A -# Site specific target and host-target definitions -# --include $(CONFIG)/os/CONFIG_SITE.Common.$(T_A) --include $(CONFIG)/os/CONFIG_SITE.$(EPICS_HOST_ARCH).$(T_A) # Include /cfg/CONFIG* definitions from tops defined in RELEASE* files # ifneq ($(CONFIG),$(TOP)/configure) -RELEASE_TOPS_REVERSE := $(shell \ - $(PERL) -e '$$,=" ";print reverse @ARGV' $(RELEASE_TOPS)) -RELEASE_CFG_CONFIGS = $(foreach top, $(RELEASE_TOPS_REVERSE), \ - $(wildcard $($(top))/cfg/CONFIG*)) -ifneq ($(RELEASE_CFG_CONFIGS),) -include $(RELEASE_CFG_CONFIGS) -endif + RELEASE_TOPS_REVERSE := $(shell \ + $(PERL) -e '$$,=" ";print reverse @ARGV' $(RELEASE_TOPS)) + RELEASE_CFG_CONFIGS = $(foreach top, $(RELEASE_TOPS_REVERSE), \ + $(wildcard $($(top))/cfg/CONFIG*)) + ifneq ($(RELEASE_CFG_CONFIGS),) + include $(RELEASE_CFG_CONFIGS) + endif endif # Include $(INSTALL_CFG)/CONFIG* definitions # TOP_CFG_CONFIGS = $(wildcard $(INSTALL_CFG)/CONFIG*) ifneq ($(TOP_CFG_CONFIGS),) -include $(TOP_CFG_CONFIGS) + include $(TOP_CFG_CONFIGS) endif -endif # ifdef T_A - # User specific definitions # -include $(HOME)/configure/CONFIG_USER -include $(HOME)/configure/CONFIG_USER.$(EPICS_HOST_ARCH) ifdef T_A --include $(HOME)/configure/CONFIG_USER.Common.$(T_A) --include $(HOME)/configure/CONFIG_USER.$(EPICS_HOST_ARCH).$(T_A) + -include $(HOME)/configure/CONFIG_USER.Common.$(T_A) + -include $(HOME)/configure/CONFIG_USER.$(EPICS_HOST_ARCH).$(T_A) endif