Compare commits
162 Commits
R3.14.9-pr
...
R3.14.9-rc
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d468d7f462 | ||
|
|
8dfea0ce50 | ||
|
|
cda58de74a | ||
|
|
2d031c46a2 | ||
|
|
5e4b2d03ad | ||
|
|
db067c9780 | ||
|
|
3ec09adf20 | ||
|
|
57e9e59714 | ||
|
|
cde78f0b70 | ||
|
|
6ed4f091b2 | ||
|
|
bb625c7f25 | ||
|
|
47f5203faa | ||
|
|
287743f140 | ||
|
|
a841a79194 | ||
|
|
9e2c64ecfd | ||
|
|
6fb7d5255b | ||
|
|
00fc1ce769 | ||
|
|
852afdc4d8 | ||
|
|
ae06349563 | ||
|
|
a710bff122 | ||
|
|
fe2b0e599d | ||
|
|
255751f420 | ||
|
|
7787f5906d | ||
|
|
de34f5de03 | ||
|
|
40bb69f5fd | ||
|
|
6ce83fc9e4 | ||
|
|
e0b4715c98 | ||
|
|
e989af9b01 | ||
|
|
3c1b10dfce | ||
|
|
27342322ec | ||
|
|
3d3ad47e47 | ||
|
|
f2154fec35 | ||
|
|
6bed83c70e | ||
|
|
4f2cb790e5 | ||
|
|
15f3358e39 | ||
|
|
285f1e03ba | ||
|
|
03e9ce2855 | ||
|
|
c5563644db | ||
|
|
75aa6bbf97 | ||
|
|
8b8b61b797 | ||
|
|
8540fdd813 | ||
|
|
23c1596d22 | ||
|
|
9e292ca085 | ||
|
|
410eca1633 | ||
|
|
44d742e147 | ||
|
|
abe127c6f9 | ||
|
|
beacc52519 | ||
|
|
5a9e8d156e | ||
|
|
239cd857a8 | ||
|
|
dea42bdf66 | ||
|
|
196f107432 | ||
|
|
2a7c2e9d26 | ||
|
|
556724f050 | ||
|
|
0f0ff1eec0 | ||
|
|
b937142ff3 | ||
|
|
a6527232cf | ||
|
|
d820ed034a | ||
|
|
4452f97536 | ||
|
|
c48bf48f52 | ||
|
|
bf77401cea | ||
|
|
d4adf4a0d6 | ||
|
|
f2fac70923 | ||
|
|
a00a246b0d | ||
|
|
537f9954bf | ||
|
|
d206dd92f6 | ||
|
|
f50c49131c | ||
|
|
55986a1e92 | ||
|
|
5fa24ad581 | ||
|
|
9a81831a85 | ||
|
|
11a865805e | ||
|
|
bcc41d0e72 | ||
|
|
fc4b09f84d | ||
|
|
682bb4150c | ||
|
|
fc98fe2335 | ||
|
|
8a4e442705 | ||
|
|
11ef0bca03 | ||
|
|
1e9986a2ed | ||
|
|
2e9bd68b2f | ||
|
|
4840787079 | ||
|
|
2c9414a881 | ||
|
|
99e9d60725 | ||
|
|
f16d241662 | ||
|
|
cc9473339d | ||
|
|
a400c37cc7 | ||
|
|
c25282bf58 | ||
|
|
3fe19655a1 | ||
|
|
724a589fe1 | ||
|
|
b8bcfdcdda | ||
|
|
da75453a22 | ||
|
|
d25e7107a7 | ||
|
|
e93b833c27 | ||
|
|
f0b99cc9c1 | ||
|
|
94dfec0999 | ||
|
|
88c68422af | ||
|
|
db9f3d81a3 | ||
|
|
947822da70 | ||
|
|
f48fe4c1c0 | ||
|
|
4d30f6adaa | ||
|
|
9fb0faf86e | ||
|
|
f42e4195c5 | ||
|
|
a3808ec393 | ||
|
|
41786fef1f | ||
|
|
82d59c8d75 | ||
|
|
0fa08d07c8 | ||
|
|
a4ab66c867 | ||
|
|
565d931b4b | ||
|
|
e372769b45 | ||
|
|
f011531538 | ||
|
|
52e28d7a7a | ||
|
|
f4d3632afd | ||
|
|
22d9f942e2 | ||
|
|
29c43d0cdb | ||
|
|
318e5247f1 | ||
|
|
bdd9d96603 | ||
|
|
afc4bdd3be | ||
|
|
ce17ed5ae2 | ||
|
|
e553c3ec56 | ||
|
|
bac905a5a9 | ||
|
|
049e054c31 | ||
|
|
634f37c225 | ||
|
|
0dd205f750 | ||
|
|
ee8eec3fdb | ||
|
|
8de0f7bf7a | ||
|
|
fb15db1454 | ||
|
|
577b65a67f | ||
|
|
6c5dedead5 | ||
|
|
514bb7f897 | ||
|
|
9785a839b7 | ||
|
|
f2cc4a73e9 | ||
|
|
d443b72d29 | ||
|
|
d3069f12bc | ||
|
|
3b50639eef | ||
|
|
39128f134e | ||
|
|
6802509e6d | ||
|
|
5b6a358fab | ||
|
|
bdc071f3c5 | ||
|
|
de19586072 | ||
|
|
b61e4bcb59 | ||
|
|
4a98bdd599 | ||
|
|
54ab39d0cf | ||
|
|
af35f163ec | ||
|
|
936f194885 | ||
|
|
5150a9404c | ||
|
|
ecb43bedd9 | ||
|
|
1707e28d2e | ||
|
|
91e3c129df | ||
|
|
b50c8f5882 | ||
|
|
47d7b63b4f | ||
|
|
522e090992 | ||
|
|
e16dc7852e | ||
|
|
48337e2382 | ||
|
|
d23b8bb1d0 | ||
|
|
ce55fe1c78 | ||
|
|
aa08e33707 | ||
|
|
c51438c597 | ||
|
|
0b481a519d | ||
|
|
ec8e064333 | ||
|
|
257c7fd23b | ||
|
|
1e72aa61f0 | ||
|
|
deeda7b04f | ||
|
|
e7655058d0 | ||
|
|
78afaf42f3 |
@@ -277,7 +277,7 @@ POSIX_CPPFLAGS_YES =
|
||||
# useManifestTool.pl returns 0(don't use) or 1(use).
|
||||
#
|
||||
ifeq ($(shell $(PERL) $(EPICS_BASE_TOOLS)/useManifestTool.pl),1)
|
||||
MT_DLL_COMMAND = mt.exe /manifest $@.manifest /outputresource:$@;\#2
|
||||
MT_EXE_COMMAND = mt.exe /manifest $@.manifest /outputresource:$@;\#1
|
||||
MT_DLL_COMMAND = mt.exe /manifest $@.manifest "/outputresource:$@;\#2"
|
||||
MT_EXE_COMMAND = mt.exe /manifest $@.manifest "/outputresource:$@;\#1"
|
||||
endif
|
||||
|
||||
|
||||
@@ -12,23 +12,18 @@
|
||||
# Sites may override these definitions in CONFIG_SITE.Host.freebsd
|
||||
|
||||
OS_CLASS = freebsd
|
||||
ARCH_CLASS = x86_64
|
||||
|
||||
# Include definitions common to all Unix archs
|
||||
include $(EPICS_BASE)/config/CONFIG.Host.UnixCommon
|
||||
|
||||
ARCH_DEP_CPPFLAGS += -D_X86_64_
|
||||
|
||||
CODE_CPPFLAGS = -D_REENTRANT
|
||||
|
||||
#POSIX_CPPFLAGS = -D_POSIX_C_SOURCE=199506L -D_POSIX_THREADS -D_XOPEN_SOURCE=500
|
||||
POSIX_CPPFLAGS = -D_POSIX_THREADS
|
||||
POSIX_LDLIBS = -lpthread
|
||||
|
||||
# -D_BSD_SOURCE for gethostname() in unistd.h as needed by cacChannelIO.cpp.
|
||||
OP_SYS_CPPFLAGS += -D_BSD_SOURCE
|
||||
OP_SYS_CPPFLAGS += -Dfreebsd
|
||||
#OP_SYS_LDLIBS += -lrt
|
||||
|
||||
# Set runtime path for shared libraries
|
||||
RUNTIME_LDFLAGS = $(SHRLIB_SEARCH_FULLPATHDIRS:%=-Wl,-rpath,%)
|
||||
|
||||
15
config/CONFIG.Host.freebsd-x86
Normal file
15
config/CONFIG.Host.freebsd-x86
Normal file
@@ -0,0 +1,15 @@
|
||||
#*************************************************************************
|
||||
# Copyright (c) 2006 UChicago Argonne LLC, as Operator of Argonne
|
||||
# National Laboratory.
|
||||
# Copyright (c) 2002 The Regents of the University of California, as
|
||||
# Operator of Los Alamos National Laboratory.
|
||||
# EPICS BASE is distributed subject to a Software License Agreement found
|
||||
# in file LICENSE that is included with this distribution.
|
||||
#*************************************************************************
|
||||
# $Id$
|
||||
|
||||
ARCH_CLASS = x86
|
||||
|
||||
-include $(EPICS_BASE)/config/CONFIG.Host.freebsd
|
||||
|
||||
ARCH_DEP_CPPFLAGS += -D_X86_
|
||||
@@ -1,12 +1,15 @@
|
||||
#*************************************************************************
|
||||
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
|
||||
# Copyright (c) 2006 UChicago Argonne LLC, as Operator of Argonne
|
||||
# National Laboratory.
|
||||
# Copyright (c) 2002 The Regents of the University of California, as
|
||||
# Operator of Los Alamos National Laboratory.
|
||||
# EPICS BASE Versions 3.13.7
|
||||
# and higher are distributed subject to a Software License Agreement found
|
||||
# EPICS BASE is distributed subject to a Software License Agreement found
|
||||
# in file LICENSE that is included with this distribution.
|
||||
#*************************************************************************
|
||||
# $Id$
|
||||
|
||||
ARCH_CLASS = x86_64
|
||||
|
||||
-include $(EPICS_BASE)/config/CONFIG.Host.freebsd
|
||||
|
||||
ARCH_DEP_CPPFLAGS += -D_X86_64_
|
||||
|
||||
17
config/CONFIG.Host.linux-x86_64
Normal file
17
config/CONFIG.Host.linux-x86_64
Normal file
@@ -0,0 +1,17 @@
|
||||
#*************************************************************************
|
||||
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
|
||||
# National Laboratory.
|
||||
# Copyright (c) 2002 The Regents of the University of California, as
|
||||
# Operator of Los Alamos National Laboratory.
|
||||
# EPICS BASE Versions 3.13.7
|
||||
# and higher are distributed subject to a Software License Agreement found
|
||||
# in file LICENSE that is included with this distribution.
|
||||
#*************************************************************************
|
||||
# $Id$
|
||||
|
||||
-include $(EPICS_BASE)/config/CONFIG.Host.Linux
|
||||
|
||||
ARCH_CLASS = Linux
|
||||
|
||||
ARCH_DEP_CFLAGS = -D_X86_64_ -Dlinux
|
||||
|
||||
13
config/CONFIG.Host.linux-x86_64-debug
Normal file
13
config/CONFIG.Host.linux-x86_64-debug
Normal file
@@ -0,0 +1,13 @@
|
||||
#*************************************************************************
|
||||
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
|
||||
# National Laboratory.
|
||||
# Copyright (c) 2002 The Regents of the University of California, as
|
||||
# Operator of Los Alamos National Laboratory.
|
||||
# EPICS BASE Versions 3.13.7
|
||||
# and higher are distributed subject to a Software License Agreement found
|
||||
# in file LICENSE that is included with this distribution.
|
||||
#*************************************************************************
|
||||
# $Id$
|
||||
|
||||
-include $(EPICS_BASE)/config/CONFIG.Host.linux-x86_64
|
||||
|
||||
20
config/CONFIG.Host.osf-alpha-gnu
Normal file
20
config/CONFIG.Host.osf-alpha-gnu
Normal file
@@ -0,0 +1,20 @@
|
||||
#*************************************************************************
|
||||
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
|
||||
# National Laboratory.
|
||||
# Copyright (c) 2002 The Regents of the University of California, as
|
||||
# Operator of Los Alamos National Laboratory.
|
||||
# EPICS BASE Versions 3.13.7
|
||||
# and higher are distributed subject to a Software License Agreement found
|
||||
# in file LICENSE that is included with this distribution.
|
||||
#*************************************************************************
|
||||
# $Id$
|
||||
|
||||
# osf-alpha is the new name for alpha
|
||||
-include $(EPICS_BASE)/config/CONFIG.Host.alpha
|
||||
|
||||
#==========================
|
||||
# These are overrides of ANSI and CPLUSPLUS values in CONFIG_SITE
|
||||
ANSI=GCC
|
||||
CPLUSPLUS=G++
|
||||
#==========================
|
||||
|
||||
@@ -71,16 +71,19 @@ POSIX_CPPFLAGS_YES += -D__EXTENSIONS__ -mt
|
||||
|
||||
ARCH_DEP_LDFLAGS += -mt
|
||||
|
||||
# socket and nsl needed by libca.a
|
||||
# socket and nsl needed by libca.a when SHARED_LIBRARIES = NO
|
||||
ARCH_DEP_LDLIBS += -lsocket -lnsl
|
||||
ARCH_DEP_LDLIBS += -lposix4 -lpthread
|
||||
ARCH_DEP_LDLIBS_8 = -lCrun
|
||||
ARCH_DEP_LDLIBS_9 = -lCrun
|
||||
|
||||
ARCH_DEP_LDLIBS_8 += -lCrun -lc -lCstd
|
||||
ARCH_DEP_LDLIBS_9 += -lCrun -lc -lCstd
|
||||
ARCH_DEP_LDLIBS_10 += -lCrun -lc -lCstd
|
||||
ARCH_DEP_LDLIBS += $(ARCH_DEP_LDLIBS_$(SOLARIS_VERSION))
|
||||
|
||||
#Allows R3.13 built extensions to load R3.14 shared libs
|
||||
SYS_DLL_LIBS_solaris_8 = Crun
|
||||
SYS_DLL_LIBS_solaris_9 = Crun
|
||||
SYS_DLL_LIBS_solaris_10 = Crun
|
||||
SYS_DLL_LIBS_solaris += posix4 pthread $(SYS_DLL_LIBS_solaris_$(SOLARIS_VERSION))
|
||||
|
||||
# Runtime ldflags
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
# solaris-sparc is the new name for solaris
|
||||
-include $(EPICS_BASE)/config/CONFIG.Host.solaris
|
||||
|
||||
ARCH_DEP_CFLAGS += -xtarget=ultra -xarch=v9
|
||||
ARCH_DEP_CXXFLAGS += -xtarget=ultra -xarch=v9
|
||||
ARCH_DEP_LDFLAGS += -xtarget=ultra -xarch=v9
|
||||
ARCH_DEP_CFLAGS += -xarch=generic64
|
||||
ARCH_DEP_CXXFLAGS += -xarch=generic64
|
||||
ARCH_DEP_LDFLAGS += -xarch=generic64
|
||||
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
# and higher are distributed subject to a Software License Agreement found
|
||||
# in file LICENSE that is included with this distribution.
|
||||
#*************************************************************************
|
||||
# CONFIG.Host.solaris-x86
|
||||
# CONFIG.Host.solaris-x86-gnu
|
||||
#
|
||||
# This file is maintained by the EPICS community.
|
||||
# Sites may override these definitions in CONFIG_SITE.Host.solaris-x86
|
||||
|
||||
@@ -12,20 +12,7 @@
|
||||
# This file is maintained by the EPICS community.
|
||||
# Sites may override these definitions in CONFIG_SITE.Host.solarisGnu
|
||||
|
||||
ARCH_CLASS = solaris
|
||||
|
||||
# Include definitions common to all Unix archs
|
||||
include $(EPICS_BASE)/config/CONFIG.Host.UnixCommon
|
||||
|
||||
#
|
||||
# required by sun's C++ compiler
|
||||
#
|
||||
AR = ar
|
||||
_AR = $(AR) $(ARFLAGS)
|
||||
G++_AR = $(_AR)
|
||||
CCC_AR = $(CCC) -xar -o
|
||||
ARCMD = $($(CPLUSPLUS)_AR) $@
|
||||
RANLIB =
|
||||
include $(EPICS_BASE)/config/CONFIG.Host.solaris
|
||||
|
||||
#==========================
|
||||
# These are overrides of ANSI and CPLUSPLUS values in CONFIG_SITE
|
||||
@@ -33,25 +20,3 @@ ANSI=GCC
|
||||
CPLUSPLUS=G++
|
||||
#==========================
|
||||
|
||||
SOLARIS_VERSION = $(subst 5.,,$(shell uname -r))
|
||||
ARCH_DEP_CPPFLAGS += -DSOLARIS=$(SOLARIS_VERSION)
|
||||
POSIX_CPPFLAGS_YES += -D__EXTENSIONS__
|
||||
|
||||
ARCH_DEP_LDFLAGS += -mt
|
||||
|
||||
# socket and nsl needed by libca.a
|
||||
ARCH_DEP_LDLIBS += -lsocket -lnsl
|
||||
ARCH_DEP_LDLIBS += -lposix4 -lpthread
|
||||
ARCH_DEP_LDLIBS_8 = -lCrun
|
||||
ARCH_DEP_LDLIBS_9 = -lCrun
|
||||
ARCH_DEP_LDLIBS += $(ARCH_DEP_LDLIBS_$(SOLARIS_VERSION))
|
||||
|
||||
#Allows R3.13 built extensions to load R3.14 shared libs
|
||||
SYS_DLL_LIBS_solaris_8 = Crun
|
||||
SYS_DLL_LIBS_solaris_9 = Crun
|
||||
SYS_DLL_LIBS_solaris += posix4 pthread $(SYS_DLL_LIBS_solaris_$(SOLARIS_VERSION))
|
||||
|
||||
# Runtime ldflags
|
||||
RUNTIME_LDFLAGS =$(addprefix -R,$(EPICS_BASE)/lib/$(EPICS_HOST_ARCH)\
|
||||
$(EPICS_EXTENSIONS)/lib/$(EPICS_HOST_ARCH))
|
||||
|
||||
|
||||
@@ -12,14 +12,15 @@
|
||||
# This file is maintained by the EPICS community.
|
||||
# Sites may override these definitions in CONFIG_SITE.Host.win32-x86-cygwin
|
||||
|
||||
SHARED_LIBRARIES = NO
|
||||
|
||||
#ARCH_CLASS = WIN32
|
||||
ARCH_CLASS = cygwin
|
||||
|
||||
# Include definitions common to all Unix archs
|
||||
include $(EPICS_BASE)/config/CONFIG.Host.UnixCommon
|
||||
|
||||
EXE = .exe
|
||||
|
||||
SHARED_LIBRARIES = NO
|
||||
|
||||
ARCH_CLASS = WIN32
|
||||
|
||||
AR = ar -rc
|
||||
ARCMD = $(AR) $@
|
||||
RANLIB = ranlib -t
|
||||
@@ -35,13 +36,16 @@ G++_STRICT = $(G++) -pedantic
|
||||
|
||||
# Dont use -fPIC: with -fPIC we get
|
||||
# "warning: -fPIC ignored for target (all code is position independent) "
|
||||
GCC_DEP_CFLAGS = -D_REENTRANT
|
||||
G++_DEP_CFLAGS = -D_REENTRANT
|
||||
GCC_DEP_CFLAGS =
|
||||
G++_DEP_CFLAGS =
|
||||
|
||||
OP_SYS_CFLAGS =
|
||||
OP_SYS_CPPFLAGS = -mno-cygwin
|
||||
OP_SYS_CXXFLAGS += -D__cplusplus
|
||||
OP_SYS_LDFLAGS += -mno-cygwin
|
||||
|
||||
POSIX_CPPFLAGS_YES =
|
||||
|
||||
# With no-cygwin option:
|
||||
# compiler defines _X86_ 1
|
||||
# compiler defines __MSVCRT__ 1
|
||||
|
||||
@@ -12,12 +12,14 @@
|
||||
# This file is maintained by the EPICS community.
|
||||
# Sites may override these definitions in CONFIG_SITE.Host.win32-x86-mingw
|
||||
|
||||
ARCH_CLASS = WIN32
|
||||
# Include definitions common to all Unix archs
|
||||
include $(EPICS_BASE)/config/CONFIG.Host.UnixCommon
|
||||
|
||||
EXE = .exe
|
||||
|
||||
SHARED_LIBRARIES = NO
|
||||
|
||||
# Include definitions common to all Unix archs
|
||||
include $(EPICS_BASE)/config/CONFIG.Host.UnixCommon
|
||||
ARCH_CLASS = WIN32
|
||||
|
||||
AR = ar -rc
|
||||
ARCMD = $(AR) $@
|
||||
@@ -39,5 +41,18 @@ CPLUSPLUS=G++
|
||||
# Compiler defines WINNT 1
|
||||
# Compiler does not define __unix __unix__ unix
|
||||
|
||||
OP_SYS_CFLAGS =
|
||||
OP_SYS_CXXFLAGS += -D__cplusplus
|
||||
|
||||
GCC_DEP_CFLAGS =
|
||||
G++_DEP_CFLAGS =
|
||||
|
||||
POSIX_CPPFLAGS_YES =
|
||||
|
||||
ARCH_DEP_LDLIBS = -lws2_32 -ladvapi32 -luser32 -lkernel32 -lwinmm
|
||||
|
||||
# Remove -ansi compile option for gcc (does not allow c++ type comments).
|
||||
GCC_ANSI = $(GCC)
|
||||
GCC_STRICT = $(GCC) -pedantic
|
||||
G++_NORMAL = $(G++) -pedantic
|
||||
G++_STRICT = $(G++) -pedantic
|
||||
|
||||
@@ -244,7 +244,7 @@ LDFLAGS = $(OPT_LDFLAGS) $(TARGET_LDFLAGS) $(USR_LDFLAGS)\
|
||||
LDLIBS = $(TARGET_LDLIBS) $(USR_LDLIBS) $(STATIC_LDLIBS) $(ARCH_DEP_LDLIBS)\
|
||||
$(OP_SYS_LDLIBS) $(POSIX_LDLIBS)
|
||||
|
||||
CPPFLAGS += $(TARGET_CPPFLAGS) $(USR_CPPFLAGS) $(ARCH_DEP_CPPFLAGS) $(POSIX_CPPFLAGS)
|
||||
CPPFLAGS += $(TARGET_CPPFLAGS) $(USR_CPPFLAGS) $(ARCH_DEP_CPPFLAGS) $(POSIX_CPPFLAGS) $(OP_SYS_CPPFLAGS)
|
||||
|
||||
CPPSNCFLAGS = $(INCLUDES)
|
||||
|
||||
|
||||
@@ -9,7 +9,6 @@
|
||||
#*************************************************************************
|
||||
# CONFIG_HOST_ARCH.Darwin
|
||||
#
|
||||
# Override values in CONFIG.Vx
|
||||
|
||||
# Include definitions common to all Unix archs
|
||||
include $(EPICS_BASE)/config/CONFIG_HOST_ARCH.UnixCommon
|
||||
|
||||
@@ -9,7 +9,6 @@
|
||||
#*************************************************************************
|
||||
# CONFIG_HOST_ARCH.Linux
|
||||
#
|
||||
# Override values in CONFIG.Vx
|
||||
|
||||
# Include definitions common to all Unix archs
|
||||
include $(EPICS_BASE)/config/CONFIG_HOST_ARCH.UnixCommon
|
||||
|
||||
@@ -9,7 +9,6 @@
|
||||
#*************************************************************************
|
||||
# CONFIG_HOST_ARCH.alpha
|
||||
#
|
||||
# Override values in CONFIG.Vx
|
||||
|
||||
# Include definitions common to all Unix archs
|
||||
include $(EPICS_BASE)/config/CONFIG_HOST_ARCH.UnixCommon
|
||||
|
||||
@@ -9,6 +9,3 @@
|
||||
# $Id$
|
||||
|
||||
-include $(EPICS_BASE)/config/CONFIG_HOST_ARCH.UnixCommon
|
||||
|
||||
WIND_HOST_TYPE = i386-linux2
|
||||
|
||||
|
||||
@@ -9,7 +9,6 @@
|
||||
#*************************************************************************
|
||||
# CONFIG_HOST_ARCH.hp700
|
||||
#
|
||||
# Override values in CONFIG.Vx
|
||||
|
||||
# Include definitions common to all Unix archs
|
||||
include $(EPICS_BASE)/config/CONFIG_HOST_ARCH.UnixCommon
|
||||
|
||||
15
config/CONFIG_HOST_ARCH.linux-x86_64
Normal file
15
config/CONFIG_HOST_ARCH.linux-x86_64
Normal file
@@ -0,0 +1,15 @@
|
||||
#*************************************************************************
|
||||
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
|
||||
# National Laboratory.
|
||||
# Copyright (c) 2002 The Regents of the University of California, as
|
||||
# Operator of Los Alamos National Laboratory.
|
||||
# EPICS BASE Versions 3.13.7
|
||||
# and higher are distributed subject to a Software License Agreement found
|
||||
# in file LICENSE that is included with this distribution.
|
||||
#*************************************************************************
|
||||
# $Id$
|
||||
|
||||
# Include definitions common to all Unix archs
|
||||
include $(EPICS_BASE)/config/CONFIG_HOST_ARCH.UnixCommon
|
||||
|
||||
WIND_HOST_TYPE = x86-linux2
|
||||
15
config/CONFIG_HOST_ARCH.linux-x86_64-debug
Normal file
15
config/CONFIG_HOST_ARCH.linux-x86_64-debug
Normal file
@@ -0,0 +1,15 @@
|
||||
#*************************************************************************
|
||||
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
|
||||
# National Laboratory.
|
||||
# Copyright (c) 2002 The Regents of the University of California, as
|
||||
# Operator of Los Alamos National Laboratory.
|
||||
# EPICS BASE Versions 3.13.7
|
||||
# and higher are distributed subject to a Software License Agreement found
|
||||
# in file LICENSE that is included with this distribution.
|
||||
#*************************************************************************
|
||||
# $Id$
|
||||
|
||||
# Include definitions common to all Unix archs
|
||||
include $(EPICS_BASE)/config/CONFIG_HOST_ARCH.linux-x86_64
|
||||
|
||||
HOST_OPT = NO
|
||||
@@ -9,7 +9,6 @@
|
||||
#*************************************************************************
|
||||
# CONFIG_HOST_ARCH.sgi
|
||||
#
|
||||
# Override values in CONFIG.Vx
|
||||
|
||||
# Include definitions common to all Unix archs
|
||||
include $(EPICS_BASE)/config/CONFIG_HOST_ARCH.UnixCommon
|
||||
|
||||
@@ -8,8 +8,6 @@
|
||||
# in file LICENSE that is included with this distribution.
|
||||
#*************************************************************************
|
||||
# CONFIG_HOST_ARCH.solaris
|
||||
#
|
||||
# Override values in CONFIG.Vx
|
||||
|
||||
# Include definitions common to all Unix archs
|
||||
include $(EPICS_BASE)/config/CONFIG_HOST_ARCH.UnixCommon
|
||||
|
||||
@@ -8,8 +8,6 @@
|
||||
# in file LICENSE that is included with this distribution.
|
||||
#*************************************************************************
|
||||
# CONFIG_HOST_ARCH.solaris-x86
|
||||
#
|
||||
# Override values in CONFIG.Vx
|
||||
|
||||
# Include definitions common to all Unix archs
|
||||
include $(EPICS_BASE)/config/CONFIG_HOST_ARCH.UnixCommon
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
# CONFIG_HOST_ARCH.solarisGnu
|
||||
#
|
||||
# Override values in CONFIG.Vx
|
||||
|
||||
# Include definitions common to all Unix archs
|
||||
include $(EPICS_BASE)/config/CONFIG_HOST_ARCH.UnixCommon
|
||||
|
||||
@@ -9,7 +9,6 @@
|
||||
#*************************************************************************
|
||||
# CONFIG_HOST_ARCH.sun4
|
||||
#
|
||||
# Override values in CONFIG.Vx
|
||||
|
||||
# Include definitions common to all Unix archs
|
||||
include $(EPICS_BASE)/config/CONFIG_HOST_ARCH.UnixCommon
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
# CONFIG_SITE.Vx.ppc604
|
||||
|
||||
# APS override of tornado directory for ppc
|
||||
#VX_DIR_YES = /usr/local/vw/tornado101ppc2
|
||||
|
||||
@@ -28,7 +28,7 @@ EPICS_BASE_IOC_LIBS += dbIoc registryIoc dbStaticIoc ca Com
|
||||
#---------------------------------------------------------------
|
||||
# Epics base Host libraries
|
||||
|
||||
EPICS_BASE_HOST_LIBS += cas gdd iocsh asHost dbStaticHost registryIoc
|
||||
EPICS_BASE_HOST_LIBS += cas gdd iocshHost asHost dbStaticHost registryIoc
|
||||
EPICS_BASE_HOST_LIBS += ca Com
|
||||
|
||||
#---------------------------------------------------------------
|
||||
|
||||
@@ -29,8 +29,8 @@ EPICS_MODIFICATION = 9
|
||||
EPICS_PATCH_LEVEL = 0
|
||||
|
||||
# This will be -CVS or empty at an official release point
|
||||
#EPICS_CVS_SNAPSHOT=-CVS
|
||||
EPICS_CVS_SNAPSHOT=-pre1
|
||||
EPICS_CVS_SNAPSHOT=-RC1
|
||||
#EPICS_CVS_SNAPSHOT=
|
||||
|
||||
# No changes should be needed below here
|
||||
|
||||
|
||||
@@ -312,8 +312,7 @@ PREPROCESS.cpp = $(CPP) $(CPPFLAGS) $(INCLUDES) $< > $@
|
||||
# Depends command
|
||||
|
||||
HDEPENDS_FLAGS =
|
||||
# Use only dependancies from current top tree
|
||||
HDEPENDS_INCLUDES = $(filter .%,$(subst -I,,$(INCLUDES)))
|
||||
HDEPENDS_INCLUDES = $(subst -I,,$(INCLUDES))
|
||||
HDEPENDSFLAGS = -m $*$(DEP) $(HDEPENDS_INCLUDES) $@ $<
|
||||
HDEPENDS_CMD_YES = -$(MKMF) $(HDEPENDS_FLAGS) $(HDEPENDSFLAGS)
|
||||
HDEPENDS_CMD_NO = echo ""
|
||||
|
||||
@@ -22,6 +22,8 @@
|
||||
# darwin-ppc (PowerPC based Apple running OSX)
|
||||
# darwin-x86 (Intel based Apple running OSX)
|
||||
# darwin-ppcx86 (Universal binaries for both CPUs)
|
||||
# freebsd-x86 (GNU compiler used for host builds)
|
||||
# freebsd-x86_64 (GNU compiler used for host builds)
|
||||
# hpux-parisc (HP compiler used for host builds)
|
||||
# hpux-parisc-gnu (GNU compiler used for host builds)
|
||||
# linux-ppc (GNU compiler used for host builds)
|
||||
@@ -59,6 +61,7 @@
|
||||
# linux-586 (linux-x86 host)
|
||||
# linux-686 (linux-x86 host)
|
||||
# linux-athlon (linux-x86 host)
|
||||
# linux-arm
|
||||
# vxWorks-486
|
||||
# vxWorks-68040
|
||||
# vxWorks-68040lc
|
||||
@@ -68,6 +71,8 @@
|
||||
# vxWorks-ppc603_long
|
||||
# vxWorks-ppc604
|
||||
# vxWorks-ppc604_long
|
||||
# vxWorks-ppc604_altivec
|
||||
# vxWorks-mpc8540
|
||||
# RTEMS-gen68360
|
||||
# RTEMS-mcp750
|
||||
# RTEMS-mvme167
|
||||
|
||||
@@ -78,7 +78,7 @@ COMMON_DBDINC += $(addprefix $(COMMON_DIR),$(HINC))
|
||||
DBDDEPENDS_FILES += $(addsuffix $(DEP),$(COMMON_DBDS) \
|
||||
$(COMMON_DBDINC) $(COMMON_DBS))
|
||||
|
||||
DBDDEPENDS_FLAGS = $(filter .%,$(subst -I,,$(filter-out -S%,$(DBDFLAGS))))
|
||||
DBDDEPENDS_FLAGS = $(subst -I,,$(filter-out -S%,$(DBDFLAGS)))
|
||||
DBDDEPENDS_CMD = -$(MKMF) -m $@$(DEP) $(DBDDEPENDS_FLAGS) $@ $<
|
||||
|
||||
MAKEDBDEPENDS = $(PERL) $(TOOLS)/makeDbDepends.pl
|
||||
|
||||
@@ -16,11 +16,6 @@ VALID_BUILDS = Host Ioc
|
||||
# Gnu directory
|
||||
GNU_DIR = /usr/local
|
||||
|
||||
#-------------------------------------------------------
|
||||
# Get fullpathname of relative dirs
|
||||
SHRLIB_SEARCH_FULLPATHDIRS = $(foreach dir,$(SHRLIB_SEARCH_DIRS), \
|
||||
$(shell perl $(TOOLS)/fullPathName.pl $(dir)))
|
||||
|
||||
#-------------------------------------------------------
|
||||
# Unix prefix and suffix definitions
|
||||
EXE =
|
||||
@@ -55,8 +50,10 @@ SHRLIB_DEPLIBS=$(foreach lib, $(LIB_LIBS) $(USR_LIBS), \
|
||||
SHRLIB_LDLIBS = $(addprefix -l, $($*_LDLIBS) $(LIB_LIBS) $(USR_LIBS) \
|
||||
$($*_SYS_LIBS) $(LIB_SYS_LIBS) $(USR_SYS_LIBS)) $(LDLIBS)
|
||||
|
||||
SHRLIB_DEPLIB_DIRS = $(dir $($*_DEPLIBS)) $(dir $(SHRLIB_DEPLIBS))
|
||||
SHRLIBDIR_LDFLAGS += $(sort $(SHRLIB_DEPLIB_DIRS:%=-L%))
|
||||
SHRLIB_DEPLIB_DIRS = $(foreach word,$(sort $(dir $($*_DEPLIBS) $(SHRLIB_DEPLIBS))), \
|
||||
$(shell $(PERL) $(TOOLS)/fullPathName.pl $(word)))
|
||||
|
||||
SHRLIBDIR_LDFLAGS += $(SHRLIB_DEPLIB_DIRS:%=-L%)
|
||||
|
||||
#-------------------------------------------------------
|
||||
# Prod: DEPLIBS, LDFLAGS, and LDLIBS definitions
|
||||
@@ -75,8 +72,10 @@ LDLIBS_SHARED_NO = LDLIBS
|
||||
PROD_LDLIBS += $($(firstword $(LDLIBS_STATIC_$(STATIC_BUILD)) \
|
||||
$(LDLIBS_SHARED_$(SHARED_LIBRARIES))))
|
||||
|
||||
PROD_DEPLIB_DIRS = $(dir $($*_DEPLIBS)) $(dir $(PROD_DEPLIBS))
|
||||
PRODDIR_LDFLAGS += $(sort $(PROD_DEPLIB_DIRS:%=-L%))
|
||||
PROD_DEPLIB_DIRS = $(foreach word,$(sort $(dir $($*_DEPLIBS) $(PROD_DEPLIBS))), \
|
||||
$(shell $(PERL) $(TOOLS)/fullPathName.pl $(word)))
|
||||
|
||||
PRODDIR_LDFLAGS += $(PROD_DEPLIB_DIRS:%=-L%)
|
||||
|
||||
#--------------------------------------------------
|
||||
# Link definitions
|
||||
|
||||
@@ -27,7 +27,10 @@ ARCH_DEP_CPPFLAGS += -D_X86_
|
||||
OP_SYS_CPPFLAGS += -DCYGWIN32 -U_WIN32
|
||||
|
||||
# Set runtime path for shared libraries
|
||||
RUNTIME_LDFLAGS = $(SHRLIB_SEARCH_FULLPATHDIRS:%=-Wl,-rpath,%)
|
||||
SHRLIBDIR_LDFLAGS += $(SHRLIB_DEPLIB_DIRS:%=-Wl,-rpath,%)
|
||||
|
||||
# Set runtime path for products
|
||||
PRODDIR_LDFLAGS += $(PROD_DEPLIB_DIRS:%=-Wl,-rpath,%)
|
||||
|
||||
# Definitions used when COMMANDLINE_LIBRARY is READLINE
|
||||
INCLUDES_READLINE = -I$(GNU_DIR)/include
|
||||
|
||||
34
configure/os/CONFIG.Common.freebsd-x86
Normal file
34
configure/os/CONFIG.Common.freebsd-x86
Normal file
@@ -0,0 +1,34 @@
|
||||
# $Id$
|
||||
#
|
||||
# This file is maintained by the build community.
|
||||
#
|
||||
# Definitions for freebsd-x86 target builds
|
||||
# Sites may override these definitions in CONFIG_SITE.Common.freebsd-x86
|
||||
#-------------------------------------------------------
|
||||
|
||||
# Include definitions common to all freebsd targets
|
||||
include $(CONFIG)/os/CONFIG.Common.freebsdCommon
|
||||
|
||||
ARCH_CLASS = x86
|
||||
|
||||
ARCH_DEP_CPPFLAGS += -D_X86_
|
||||
|
||||
ifeq ($(BUILD_CLASS),CROSS)
|
||||
ifeq ($(EPICS_HOST_ARCH),freebsd-x86)
|
||||
# Added for 386,486,... cross builds
|
||||
CMPLR_PREFIX=
|
||||
CROSS_INCLUDES=
|
||||
CROSS_LDFLAGS=
|
||||
# Use -w not -Wall
|
||||
#WARN_CFLAGS_YES = -w
|
||||
#WARN_CXXFLAGS_YES = -w
|
||||
-include $(CONFIG)/os/CONFIG_SITE.Common.freebsd-x86
|
||||
-include $(CONFIG)/os/CONFIG.freebsd-x86.freebsd-x86
|
||||
-include $(CONFIG)/os/CONFIG_SITE.freebsd-x86.freebsd-x86
|
||||
else
|
||||
GNU_TARGET=i586-pc-freebsd-gnu
|
||||
CMPLR_SUFFIX=
|
||||
CMPLR_PREFIX=$(addsuffix -,$(GNU_TARGET))
|
||||
endif
|
||||
endif
|
||||
|
||||
@@ -13,17 +13,18 @@ OS_CLASS = freebsd
|
||||
|
||||
CODE_CPPFLAGS = -D_REENTRANT
|
||||
|
||||
#POSIX_CPPFLAGS = -D_POSIX_C_SOURCE=199506L -D_POSIX_THREADS -D_XOPEN_SOURCE=500
|
||||
POSIX_CPPFLAGS = -D_POSIX_THREADS
|
||||
POSIX_LDLIBS = -lpthread
|
||||
|
||||
# -D_BSD_SOURCE for gethostname() in unistd.h as needed by cacChannelIO.cpp.
|
||||
OP_SYS_CPPFLAGS += -D_BSD_SOURCE
|
||||
OP_SYS_CPPFLAGS += -Dfreebsd
|
||||
#OP_SYS_LDLIBS += -lrt
|
||||
|
||||
# Set runtime path for shared libraries
|
||||
RUNTIME_LDFLAGS = $(SHRLIB_SEARCH_FULLPATHDIRS:%=-Wl,-rpath,%)
|
||||
SHRLIBDIR_LDFLAGS += $(SHRLIB_DEPLIB_DIRS:%=-Wl,-rpath,%)
|
||||
|
||||
# Set runtime path for products
|
||||
PRODDIR_LDFLAGS += $(PROD_DEPLIB_DIRS:%=-Wl,-rpath,%)
|
||||
|
||||
# Definitions used when COMMANDLINE_LIBRARY is READLINE
|
||||
LDLIBS_READLINE = -lreadline -lcurses
|
||||
|
||||
@@ -26,6 +26,9 @@ LOADABLE_SHRLIB_SUFFIX = .sl$(addprefix .,$(LOADABLE_SHRLIB_VERSION))
|
||||
# Set runtime path for shared libraries
|
||||
empty:= # trick from the make docs...
|
||||
space:= $(empty) $(empty)
|
||||
RUNTIME_LDFLAGS = -Wl,+b$(subst $(space),:,$(sort $(SHRLIB_SEARCH_FULLPATHDIRS))),+s
|
||||
SHRLIBDIR_LDFLAGS += -Wl,+b$(subst $(space),:,$(SHRLIB_DEPLIB_DIRS)),+s
|
||||
|
||||
# Set runtime path for products
|
||||
PRODDIR_LDFLAGS += -Wl,+b$(subst $(space),:,$(PROD_DEPLIB_DIRS)),+s
|
||||
|
||||
GNU_TARGET=parisc-hp-unix
|
||||
|
||||
@@ -29,7 +29,10 @@ ARCH_DEP_CPPFLAGS += -D_X86_
|
||||
OP_SYS_CPPFLAGS += -DUNIX
|
||||
|
||||
# Set runtime path for shared libraries
|
||||
RUNTIME_LDFLAGS = $(SHRLIB_SEARCH_FULLPATHDIRS:%=-Wl,-rpath,%)
|
||||
SHRLIBDIR_LDFLAGS += $(SHRLIB_DEPLIB_DIRS:%=-Wl,-rpath,%)
|
||||
|
||||
# Set runtime path for products
|
||||
PRODDIR_LDFLAGS += $(PROD_DEPLIB_DIRS:%=-Wl,-rpath,%)
|
||||
|
||||
# Definitions used when COMMANDLINE_LIBRARY is READLINE
|
||||
INCLUDES_READLINE = -I$(GNU_DIR)/include
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
# Sites may override these definitions in CONFIG_SITE.Common.linux-arm
|
||||
#-------------------------------------------------------
|
||||
|
||||
# Include definitions common to all Unix targets
|
||||
# Include definitions common to all Linux targets
|
||||
include $(CONFIG)/os/CONFIG.Common.linuxCommon
|
||||
|
||||
ARCH_CLASS = arm
|
||||
@@ -14,14 +14,16 @@ ARCH_CLASS = arm
|
||||
# Set a special definition for network order of Netwinder ARM floating point
|
||||
ARCH_DEP_CPPFLAGS += -D_ARM_NWFP_
|
||||
|
||||
# Set runtime path for shared libraries
|
||||
#RUNTIME_LDFLAGS = $(SHRLIB_SEARCH_DIRS:%=-Wl,-rpath,%)
|
||||
RUNTIME_LDFLAGS = $(SHRLIB_SEARCH_DIRS:%=-Wl,-rpath-link,%)
|
||||
ifeq ($(BUILD_CLASS),CROSS)
|
||||
GNU_TARGET = arm-linux
|
||||
|
||||
ifdef CROSS
|
||||
GNU_TARGET=arm-linux
|
||||
# prefix of compiler tools
|
||||
CMPLR_SUFFIX=
|
||||
CMPLR_PREFIX=$(addsuffix -,$(GNU_TARGET))
|
||||
# prefix of compiler tools
|
||||
CMPLR_SUFFIX =
|
||||
CMPLR_PREFIX = $(addsuffix -,$(GNU_TARGET))
|
||||
|
||||
# Provide a link-time path for shared libraries
|
||||
SHRLIBDIR_LDFLAGS += $(SHRLIB_DEPLIB_DIRS:%=-Wl,-rpath-link,%)
|
||||
|
||||
# Provide a link-time path for products
|
||||
PRODDIR_LDFLAGS += $(PROD_DEPLIB_DIRS:%=-Wl,-rpath-link,%)
|
||||
endif
|
||||
|
||||
|
||||
@@ -23,7 +23,10 @@ OP_SYS_CPPFLAGS += -Dlinux
|
||||
OP_SYS_LDLIBS += -lrt
|
||||
|
||||
# Set runtime path for shared libraries
|
||||
RUNTIME_LDFLAGS = $(SHRLIB_SEARCH_FULLPATHDIRS:%=-Wl,-rpath,%)
|
||||
SHRLIBDIR_LDFLAGS += $(SHRLIB_DEPLIB_DIRS:%=-Wl,-rpath,%)
|
||||
|
||||
# Set runtime path for products
|
||||
PRODDIR_LDFLAGS += $(PROD_DEPLIB_DIRS:%=-Wl,-rpath,%)
|
||||
|
||||
# Definitions used when COMMANDLINE_LIBRARY is READLINE
|
||||
LDLIBS_READLINE = -lreadline -lcurses
|
||||
|
||||
40
configure/os/CONFIG.Common.osf-alpha
Normal file
40
configure/os/CONFIG.Common.osf-alpha
Normal file
@@ -0,0 +1,40 @@
|
||||
# CONFIG.Common.osf-alpha
|
||||
#
|
||||
# $Id$
|
||||
# This file is maintained by the build community.
|
||||
#
|
||||
# Definitions for osf-alpha target archs
|
||||
# Sites may override these definitions in CONFIG_SITE.Common.osf-alpha
|
||||
#-------------------------------------------------------
|
||||
|
||||
# Include definitions common to all Unix targets
|
||||
include $(CONFIG)/os/CONFIG.Common.UnixCommon
|
||||
|
||||
OS_CLASS = osf
|
||||
ARCH_CLASS = alpha
|
||||
|
||||
CODE_CPPFLAGS =
|
||||
|
||||
POSIX_CPPFLAGS += -pthread -ieee
|
||||
POSIX_LDFLAGS += -pthread -ieee
|
||||
|
||||
OP_SYS_CPPFLAGS += -D_OSF_SOURCE
|
||||
OP_SYS_LDLIBS += -lrt
|
||||
# Unknown reason why USR_SYS_LIBS += m is needed
|
||||
USR_SYS_LIBS += m
|
||||
|
||||
space:=$(empty) $(empty)
|
||||
colon := :
|
||||
|
||||
# Set runtime path for shared libraries
|
||||
SHRLIBDIR_LDFLAGS += $(SHRLIB_DEPLIB_DIRS:%=-rpath %)
|
||||
|
||||
# Set runtime path for products
|
||||
PRODDIR_LDFLAGS += $(PROD_DEPLIB_DIRS:%=-rpath %)
|
||||
|
||||
ifdef CROSS
|
||||
GNU_TARGET=alpha-osf
|
||||
CMPLR_SUFFIX=
|
||||
CMPLR_PREFIX=$(addsuffix -,$(GNU_TARGET))
|
||||
endif
|
||||
|
||||
38
configure/os/CONFIG.Common.osf-alpha-gnu
Normal file
38
configure/os/CONFIG.Common.osf-alpha-gnu
Normal file
@@ -0,0 +1,38 @@
|
||||
# CONFIG.Common.osf-alpha-gnu
|
||||
#
|
||||
# $Id$
|
||||
# This file is maintained by the build community.
|
||||
#
|
||||
# Definitions for osf-alpha target archs
|
||||
# Sites may override these definitions in CONFIG_SITE.Common.osf-alpha-gnu
|
||||
#-------------------------------------------------------
|
||||
|
||||
# Include definitions common to all Unix targets
|
||||
include $(CONFIG)/os/CONFIG.Common.UnixCommon
|
||||
|
||||
OS_CLASS = osf
|
||||
ARCH_CLASS = alpha
|
||||
|
||||
CODE_CPPFLAGS =
|
||||
|
||||
POSIX_CPPFLAGS += -D_REENTRANT
|
||||
POSIX_LDLIBS += -lpthread -lexc
|
||||
|
||||
OP_SYS_CPPFLAGS += -D_OSF_SOURCE
|
||||
OP_SYS_LDLIBS += -lrt
|
||||
|
||||
space:=$(empty) $(empty)
|
||||
colon := :
|
||||
|
||||
# Set runtime path for shared libraries
|
||||
SHRLIBDIR_LDFLAGS += $(SHRLIB_DEPLIB_DIRS:%=-Wl,-rpath,%)
|
||||
|
||||
# Set runtime path for products
|
||||
PRODDIR_LDFLAGS += $(PROD_DEPLIB_DIRS:%=-Wl,-rpath,%)
|
||||
|
||||
ifdef CROSS
|
||||
GNU_TARGET=alpha-osf
|
||||
CMPLR_SUFFIX=
|
||||
CMPLR_PREFIX=$(addsuffix -,$(GNU_TARGET))
|
||||
endif
|
||||
|
||||
@@ -28,7 +28,11 @@ OP_SYS_CPPFLAGS += -DSOLARIS=$(SOLARIS_VERSION) $(COMPILER_CPPFLAGS)
|
||||
OP_SYS_LDFLAGS += $(COMPILER_LDFLAGS)
|
||||
|
||||
# Set runtime path for shared libraries
|
||||
RUNTIME_LDFLAGS = $(SHRLIB_SEARCH_FULLPATHDIRS:%=-R%)
|
||||
SHRLIBDIR_LDFLAGS += $(SHRLIB_DEPLIB_DIRS:%=-R%)
|
||||
|
||||
# Set runtime path for products
|
||||
PRODDIR_LDFLAGS += $(PROD_DEPLIB_DIRS:%=-R%)
|
||||
|
||||
RUNTIME_LDFLAGS += $(RUNTIME_LDFLAGS_$(COMMANDLINE_LIBRARY))
|
||||
|
||||
GNU_TARGET=sparc-sun-solaris2
|
||||
|
||||
@@ -10,6 +10,6 @@
|
||||
# Include definitions common to all solaris-sparc target archs
|
||||
include $(CONFIG)/os/CONFIG.Common.solaris-sparc
|
||||
|
||||
ARCH_DEP_CFLAGS += -xtarget=ultra -xarch=v9
|
||||
ARCH_DEP_CXXFLAGS += -xtarget=ultra -xarch=v9
|
||||
ARCH_DEP_LDFLAGS += -xtarget=ultra -xarch=v9
|
||||
ARCH_DEP_CFLAGS += -xarch=generic64
|
||||
ARCH_DEP_CXXFLAGS += -xarch=generic64
|
||||
ARCH_DEP_LDFLAGS += -xarch=generic64
|
||||
|
||||
@@ -29,7 +29,11 @@ OP_SYS_LDFLAGS += $(COMPILER_LDFLAGS)
|
||||
ARCH_DEP_CPPFLAGS = -D_X86_
|
||||
|
||||
# Set runtime path for shared libraries
|
||||
RUNTIME_LDFLAGS = $(SHRLIB_SEARCH_FULLPATHDIRS:%=-R%)
|
||||
SHRLIBDIR_LDFLAGS += $(SHRLIB_DEPLIB_DIRS:%=-R%)
|
||||
|
||||
# Set runtime path for products
|
||||
PRODDIR_LDFLAGS += $(PROD_DEPLIB_DIRS:%=-R%)
|
||||
|
||||
RUNTIME_LDFLAGS += $(RUNTIME_LDFLAGS_$(COMMANDLINE_LIBRARY))
|
||||
|
||||
GNU_TARGET=x86-sun-solaris2
|
||||
|
||||
21
configure/os/CONFIG.Common.vxWorks-mpc8540
Normal file
21
configure/os/CONFIG.Common.vxWorks-mpc8540
Normal file
@@ -0,0 +1,21 @@
|
||||
# $Id
|
||||
#
|
||||
# Definitions for vxWorks-mpc8540 targets: MPC8540 CPU with >32MB RAM.
|
||||
# Site-specific overrides go in CONFIG_SITE.Common.vxWorks-mpc8540
|
||||
#
|
||||
# This file is maintained by the EPICS build community.
|
||||
#-------------------------------------------------------
|
||||
|
||||
# Include definitions common to all vxWorks target archs
|
||||
include $(CONFIG)/os/CONFIG.Common.vxWorksCommon
|
||||
|
||||
# Vx GNU cross compiler suffix
|
||||
CMPLR_SUFFIX = ppc
|
||||
|
||||
ARCH_CLASS = ppc
|
||||
|
||||
# Architecture specific build flags
|
||||
ARCH_DEP_CPPFLAGS = -DCPU=PPC32
|
||||
ARCH_DEP_CFLAGS = -mcpu=8540 -msoft-float -mstrict-align -mlongcall
|
||||
|
||||
GNU_TARGET = powerpc-wrs-vxworks
|
||||
@@ -1,10 +1,9 @@
|
||||
# CONFIG.Common.vxWorks-ppc603
|
||||
#
|
||||
# $Id$
|
||||
# This file is maintained by the build community.
|
||||
#
|
||||
# Definitions for vxWorks-ppc603 target archs
|
||||
# Sites may override these definitions in CONFIG_SITE.Common.vxWorks-ppc603
|
||||
# Definitions for vxWorks-ppc603 targets: PPC603 and PMC8240 CPUs
|
||||
# Site-specific overrides go in CONFIG_SITE.Common.vxWorks-ppc603
|
||||
#
|
||||
# This file is maintained by the EPICS build community.
|
||||
#-------------------------------------------------------
|
||||
|
||||
# Include definitions common to all vxWorks target archs
|
||||
|
||||
@@ -1,22 +1,13 @@
|
||||
# CONFIG.Common.vxWorks-ppc603_long
|
||||
#
|
||||
# $Id$
|
||||
# This file is maintained by the build community.
|
||||
#
|
||||
# Definitions for vxWorks-ppc603 target archs with at least 32MB
|
||||
# Sites may override these definitions in CONFIG_SITE.Common.vxWorks-ppc603_long
|
||||
# Definitions for vxWorks-ppc603 targets with >32MB of RAM
|
||||
# Site-specific overrides go in CONFIG_SITE.Common.vxWorks-ppc603_long
|
||||
#
|
||||
# This file is maintained by the EPICS build community.
|
||||
#-------------------------------------------------------
|
||||
|
||||
# Include definitions common to all vxWorks target archs
|
||||
include $(CONFIG)/os/CONFIG.Common.vxWorksCommon
|
||||
# Inherit the settings from vxWorks-ppc603
|
||||
include $(CONFIG)/os/CONFIG.Common.vxWorks-ppc603
|
||||
|
||||
# Vx GNU cross compiler suffix
|
||||
CMPLR_SUFFIX = ppc
|
||||
|
||||
ARCH_CLASS = ppc
|
||||
|
||||
# Architecture specific build flags
|
||||
ARCH_DEP_CPPFLAGS = -DCPU=PPC603
|
||||
ARCH_DEP_CFLAGS = -mcpu=603 -mstrict-align -mlongcall
|
||||
|
||||
GNU_TARGET = powerpc-wrs-vxworks
|
||||
# Tell compiler to generate long branches
|
||||
ARCH_DEP_CFLAGS += -mlongcall
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
# CONFIG.Common.vxWorks-ppc604
|
||||
#
|
||||
# $Id$
|
||||
# This file is maintained by the build community.
|
||||
#
|
||||
# Definitions for vxWorks-ppc604 target archs
|
||||
# Sites may override these definitions in CONFIG_SITE.Common.vxWorks-ppc604
|
||||
# Definitions for vxWorks-ppc604 targets: PPC604, MPC7xx and MPC74xx CPUs
|
||||
# Site-specific overrides go in CONFIG_SITE.Common.vxWorks-ppc604
|
||||
#
|
||||
# This file is maintained by the EPICS build community.
|
||||
#-------------------------------------------------------
|
||||
|
||||
# Include definitions common to all vxWorks target archs
|
||||
@@ -12,11 +11,11 @@ include $(CONFIG)/os/CONFIG.Common.vxWorksCommon
|
||||
|
||||
# Vx GNU cross compiler suffix
|
||||
CMPLR_SUFFIX = ppc
|
||||
|
||||
|
||||
ARCH_CLASS = ppc
|
||||
|
||||
# Architecture specific build flags
|
||||
ARCH_DEP_CPPFLAGS = -DCPU=PPC604
|
||||
ARCH_DEP_CFLAGS = -mcpu=604 -mstrict-align
|
||||
ARCH_DEP_CFLAGS = -mcpu=604 -mstrict-align -mno-implicit-fp
|
||||
|
||||
GNU_TARGET = powerpc-wrs-vxworks
|
||||
|
||||
22
configure/os/CONFIG.Common.vxWorks-ppc604_altivec
Normal file
22
configure/os/CONFIG.Common.vxWorks-ppc604_altivec
Normal file
@@ -0,0 +1,22 @@
|
||||
# $Id$
|
||||
#
|
||||
# Definitions for vxWorks-ppc604 targets with an Altivec and >32MB of RAM.
|
||||
# Site-specific overrides go in CONFIG_SITE.Common.vxWorks-ppc604_altivec
|
||||
#
|
||||
# This file is maintained by the EPICS build community.
|
||||
#-------------------------------------------------------
|
||||
|
||||
# Inherit the settings from vxWorks-ppc604_long
|
||||
include $(CONFIG)/os/CONFIG.Common.vxWorks-ppc604_long
|
||||
|
||||
defval = $(if $(strip $(1),),$(1),$(2))
|
||||
|
||||
# Tell compiler to include altivec support; not available in 5.4
|
||||
ALTIVEC_CFLAG_5.4 = THIS_VERSION_OF_VXWORKS DOES_NOT_SUPPORT_ALTIVEC
|
||||
ALTIVEC_CFLAG_5.5 = -fvec
|
||||
ALTIVEC_CFLAG_6.0 = -fvec
|
||||
|
||||
# From 6.1 onwards the compiler option changed
|
||||
ALTIVEC_CFLAG = -maltivec
|
||||
|
||||
ARCH_DEP_CFLAGS += $(call defval,$(ALTIVEC_CFLAG_$(VXWORKS_VERSION)),$(ALTIVEC_CFLAG))
|
||||
@@ -1,22 +1,13 @@
|
||||
# CONFIG.Common.vxWorks-ppc604_long
|
||||
#
|
||||
# $Id
|
||||
# This file is maintained by the build community.
|
||||
#
|
||||
# Definitions for vxWorks-ppc604 target archs with at least 32MB
|
||||
# Sites may override these definitions in CONFIG_SITE.Common.vxWorks-ppc604_long
|
||||
# Definitions for vxWorks-ppc604 targets with >32MB of RAM
|
||||
# Site-specific overrides go in CONFIG_SITE.Common.vxWorks-ppc604_long
|
||||
#
|
||||
# This file is maintained by the EPICS build community.
|
||||
#-------------------------------------------------------
|
||||
|
||||
# Include definitions common to all vxWorks target archs
|
||||
include $(CONFIG)/os/CONFIG.Common.vxWorksCommon
|
||||
# Inherit the settings from vxWorks-ppc604
|
||||
include $(CONFIG)/os/CONFIG.Common.vxWorks-ppc604
|
||||
|
||||
# Vx GNU cross compiler suffix
|
||||
CMPLR_SUFFIX = ppc
|
||||
|
||||
ARCH_CLASS = ppc
|
||||
|
||||
# Architecture specific build flags
|
||||
ARCH_DEP_CPPFLAGS = -DCPU=PPC604
|
||||
ARCH_DEP_CFLAGS = -mcpu=604 -mstrict-align -mlongcall
|
||||
|
||||
GNU_TARGET = powerpc-wrs-vxworks
|
||||
# Tell compiler to generate long branches
|
||||
ARCH_DEP_CFLAGS += -mlongcall
|
||||
|
||||
@@ -88,10 +88,19 @@ VX_GNU_VERSION_6.2 = 3.3.2
|
||||
VX_GNU_VERSION_6.3 = 3.4.4
|
||||
VX_GNU_VERSION = $(VX_GNU_VERSION_$(VXWORKS_VERSION))
|
||||
|
||||
#--------------------------------------------------
|
||||
# Fix WIND_BASE for vxWorks 6.x on linux
|
||||
# NB: We know the value of WIND_HOST_TYPE here, but not VXWORKS_VERSION
|
||||
ifeq ($(WIND_HOST_TYPE),x86-linux)
|
||||
WIND_HOST_TYPE_5 = x86-linux
|
||||
WIND_HOST_TYPE_6 = x86-linux2
|
||||
WIND_HOST_TYPE = $(WIND_HOST_TYPE_$(VXWORKS_MAJOR_VERSION))
|
||||
endif
|
||||
|
||||
#--------------------------------------------------
|
||||
# vxWorks directory definitions
|
||||
VX_DIR_5 = $(WIND_BASE)
|
||||
VX_DIR_6 = $(WIND_BASE)/vxWorks-$(VXWORKS_VERSION)
|
||||
VX_DIR_6 = $(WIND_BASE)/vxworks-$(VXWORKS_VERSION)
|
||||
VX_DIR = $(VX_DIR_$(VXWORKS_MAJOR_VERSION))
|
||||
|
||||
VX_INCLUDE_DIRS_5 = $(VX_DIR)/target/h
|
||||
@@ -105,6 +114,9 @@ GNU_DIR_5 = $(WIND_BASE)/host/$(WIND_HOST_TYPE)
|
||||
GNU_DIR_6 = $(WIND_BASE)/gnu/$(VX_GNU_VERSION)-vxworks-$(VXWORKS_VERSION)/$(WIND_HOST_TYPE)
|
||||
GNU_DIR = $(GNU_DIR_$(VXWORKS_MAJOR_VERSION))
|
||||
|
||||
# GCC_EXEC_PREFIX considered harmful since vxWorks 6 moved it
|
||||
unexport GCC_EXEC_PREFIX
|
||||
|
||||
#--------------------------------------------------
|
||||
# C++ host processing
|
||||
NM = $(GNU_BIN)/$(CMPLR_PREFIX)nm$(CMPLR_SUFFIX)$(HOSTEXE)
|
||||
@@ -124,13 +136,17 @@ export TOOL_FAMILY = GNU
|
||||
# Operating system flags
|
||||
OP_SYS_CPPFLAGS += -DvxWorks
|
||||
OP_SYS_CFLAGS += -fno-builtin
|
||||
#OP_SYS_CFLAGS += -fno-builtin -fdollars-in-identifiers
|
||||
OP_SYS_LDFLAGS +=
|
||||
|
||||
# Fix for vxWorks headers using macros defined in
|
||||
# vxWorks.h but not including vxWorks.h
|
||||
OP_SYS_INCLUDE_CPPFLAGS_5.5 += -include $(VX_DIR)/target/h/vxWorks.h
|
||||
OP_SYS_INCLUDE_CPPFLAGS = $(OP_SYS_INCLUDE_CPPFLAGS_$(VXWORKS_VERSION))
|
||||
# Fix for vxWorks headers that use macros defined in vxWorks.h but
|
||||
# which don't actually include vxWorks.h themselves, for example the
|
||||
# target/h/sys/stat.h file which uses ULONG
|
||||
OP_SYS_INCLUDE_CPPFLAGS_5 += -include $(VX_DIR)/target/h/vxWorks.h
|
||||
OP_SYS_INCLUDE_CPPFLAGS = $(OP_SYS_INCLUDE_CPPFLAGS_$(VXWORKS_MAJOR_VERSION))
|
||||
|
||||
#--------------------------------------------------
|
||||
# Optimization: Officially vxWorks only supports -O2 or less.
|
||||
OPT_CFLAGS_YES = -O2
|
||||
OPT_CXXFLAGS_YES = -O2
|
||||
|
||||
#--------------------------------------------------
|
||||
# code flags
|
||||
@@ -144,14 +160,10 @@ CODE_CXXFLAGS_6.2 = -fno-implicit-templates
|
||||
CODE_CXXFLAGS_6 = $(CODE_CXXFLAGS_$(VXWORKS_VERSION))
|
||||
CODE_CXXFLAGS = $(CODE_CXXFLAGS_$(VXWORKS_MAJOR_VERSION))
|
||||
|
||||
#--------------------------------------------------
|
||||
# posix c preprocessor flags
|
||||
POSIX_CPPFLAGS = -D_POSIX_SOURCE
|
||||
|
||||
#--------------------------------------------------
|
||||
# no shared libs for vxWorks
|
||||
SHRLIB_CFLAGS =
|
||||
SHRLIB_LDFLAGS =
|
||||
SHRLIB_CFLAGS =
|
||||
SHRLIB_LDFLAGS =
|
||||
|
||||
#--------------------------------------------------
|
||||
# osithead use default stack, YES or NO override
|
||||
|
||||
@@ -18,7 +18,10 @@ EXE=.exe
|
||||
COMPILER_CPPFLAGS = -D_REENTRANT
|
||||
|
||||
# Set runtime path for shared libraries
|
||||
RUNTIME_LDFLAGS = $(SHRLIB_SEARCH_FULLPATHDIRS:%=-Wl,-rpath,%)
|
||||
SHRLIBDIR_LDFLAGS += $(SHRLIB_DEPLIB_DIRS:%=-Wl,-rpath,%)
|
||||
|
||||
# Set runtime path for products
|
||||
PRODDIR_LDFLAGS += $(PROD_DEPLIB_DIRS:%=-Wl,-rpath,%)
|
||||
|
||||
# Definitions used when COMMANDLINE_LIBRARY is READLINE
|
||||
INCLUDES_READLINE = -I$(GNU_DIR)/include
|
||||
@@ -42,6 +45,8 @@ OP_SYS_CXXFLAGS += -D__cplusplus
|
||||
# Overrides -DUNIX from CONFIG.Common.UnixCommon
|
||||
OP_SYS_CPPFLAGS = -mno-cygwin
|
||||
|
||||
LIBRARY_LD_RESS=
|
||||
|
||||
OP_SYS_LDFLAGS += -mno-cygwin
|
||||
OP_SYS_LDLIBS = -lws2_32 -ladvapi32 -luser32 -lkernel32 -lwinmm
|
||||
|
||||
|
||||
@@ -18,8 +18,13 @@ EXE=.exe
|
||||
# Library used when COMMANDLINE_LIBRARY is READLINE
|
||||
LDLIBS_READLINE = -lreadline
|
||||
|
||||
STATIC_BUILD=YES
|
||||
STATIC_LDLIBS_YES=-lws2_32 -ladvapi32 -luser32 -lkernel32 -lwinmm
|
||||
|
||||
# Set runtime path for shared libraries
|
||||
SHRLIBDIR_LDFLAGS += $(SHRLIB_DEPLIB_DIRS:%=-Wl,-rpath,%)
|
||||
|
||||
# Set runtime path for products
|
||||
PRODDIR_LDFLAGS += $(PROD_DEPLIB_DIRS:%=-Wl,-rpath,%)
|
||||
|
||||
|
||||
# Compiler defines _X86_ 1
|
||||
|
||||
@@ -37,3 +42,10 @@ STATIC_LDLIBS_YES=-lws2_32 -ladvapi32 -luser32 -lkernel32 -lwinmm
|
||||
# Override for -DUNIX from CONFIG.Common.UnixCommon
|
||||
OP_SYS_CPPFLAGS =
|
||||
|
||||
OP_SYS_CXXFLAGS += -D__cplusplus
|
||||
|
||||
LIBRARY_LD_RESS=
|
||||
|
||||
OP_SYS_LDLIBS = -lws2_32 -ladvapi32 -luser32 -lkernel32 -lwinmm
|
||||
#STATIC_LDLIBS_YES=-lws2_32 -ladvapi32 -luser32 -lkernel32 -lwinmm
|
||||
|
||||
|
||||
@@ -74,7 +74,7 @@ CCC = $(GNU_BIN)/c++
|
||||
#
|
||||
SHRLIB_VERSION = $(EPICS_VERSION).$(EPICS_REVISION).$(EPICS_MODIFICATION)
|
||||
SHRLIB_LDFLAGS = -dynamiclib -flat_namespace -undefined suppress \
|
||||
-install_name $(firstword $(SHRLIB_SEARCH_FULLPATHDIRS))/$@ \
|
||||
-install_name $(shell perl $(TOOLS)/fullPathName.pl $(INSTALL_LIB))/$@ \
|
||||
-compatibility_version $(EPICS_VERSION).$(EPICS_REVISION) \
|
||||
-current_version $(SHRLIB_VERSION)
|
||||
SHRLIB_SUFFIX = .$(SHRLIB_VERSION).dylib
|
||||
|
||||
10
configure/os/CONFIG.freebsd-x86.Common
Normal file
10
configure/os/CONFIG.freebsd-x86.Common
Normal file
@@ -0,0 +1,10 @@
|
||||
# $Id$
|
||||
#
|
||||
# This file is maintained by the build community.
|
||||
#
|
||||
# Definitions for freebsd host builds
|
||||
# Sites may override these definitions in CONFIG_SITE.freebsd-x86.Common
|
||||
#-------------------------------------------------------
|
||||
|
||||
#Include definitions common to unix hosts
|
||||
include $(CONFIG)/os/CONFIG.UnixCommon.Common
|
||||
19
configure/os/CONFIG.freebsd-x86.freebsd-x86
Normal file
19
configure/os/CONFIG.freebsd-x86.freebsd-x86
Normal file
@@ -0,0 +1,19 @@
|
||||
# $Id$
|
||||
#
|
||||
# Definitions for freebsd-x86_64 host - freebsd-x86_64 target builds
|
||||
# Sites may override these definitions in CONFIG_SITE.freebsd-x86_64.freebsd-x86_64
|
||||
#-------------------------------------------------------
|
||||
|
||||
# Include common gnu compiler definitions
|
||||
include $(CONFIG)/CONFIG.gnuCommon
|
||||
|
||||
GNU_DIR = /usr
|
||||
|
||||
STATIC_LDFLAGS_YES= -Wl,-Bstatic
|
||||
STATIC_LDFLAGS_NO=
|
||||
STATIC_LDLIBS_YES= -Wl,-Bdynamic
|
||||
STATIC_LDLIBS_NO=
|
||||
|
||||
SHRLIB_LDFLAGS += -shared -fPIC
|
||||
LOADABLE_SHRLIB_LDFLAGS = -shared -fPIC
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
# This file is maintained by the build community.
|
||||
#
|
||||
# Definitions for freebsd host builds
|
||||
# Sites may override these definitions in CONFIG_SITE.freebsd.Common
|
||||
# Sites may override these definitions in CONFIG_SITE.freebsd-x86_64.Common
|
||||
#-------------------------------------------------------
|
||||
|
||||
# Include definitions common to unix hosts
|
||||
|
||||
@@ -8,7 +8,6 @@
|
||||
include $(CONFIG)/CONFIG.gnuCommon
|
||||
|
||||
GNU_DIR = /usr
|
||||
GNU_LDLIBS_YES =
|
||||
|
||||
STATIC_LDFLAGS_YES= -Wl,-Bstatic
|
||||
STATIC_LDFLAGS_NO=
|
||||
|
||||
@@ -9,9 +9,6 @@ include $(CONFIG)/CONFIG.gnuCommon
|
||||
|
||||
GNU_DIR = /usr
|
||||
|
||||
# Override the -nostdinc flag, needed here...
|
||||
CROSS_CPPFLAGS =
|
||||
|
||||
# Copied from x86.x86
|
||||
STATIC_LDFLAGS_YES= -Wl,-Bstatic
|
||||
STATIC_LDFLAGS_NO=
|
||||
|
||||
12
configure/os/CONFIG.osf-alpha-gnu.Common
Normal file
12
configure/os/CONFIG.osf-alpha-gnu.Common
Normal file
@@ -0,0 +1,12 @@
|
||||
# CONFIG.osf-alpha-gnu.Common
|
||||
#
|
||||
# $Id$
|
||||
# This file is maintained by the build community.
|
||||
#
|
||||
# Definitions for osf-alpha host archs
|
||||
# Sites may override these definitions in CONFIG_SITE.osf-alpha-gnu.Common
|
||||
#-------------------------------------------------------
|
||||
|
||||
#Include definitions common to unix hosts
|
||||
include $(CONFIG)/os/CONFIG.UnixCommon.Common
|
||||
|
||||
45
configure/os/CONFIG.osf-alpha-gnu.osf-alpha-gnu
Normal file
45
configure/os/CONFIG.osf-alpha-gnu.osf-alpha-gnu
Normal file
@@ -0,0 +1,45 @@
|
||||
# CONFIG.osf-alpha-gnu.osf-alpha-gnu
|
||||
#
|
||||
# $Id$
|
||||
# This file is maintained by the build community.
|
||||
#
|
||||
# Definitions for osf-alpha host archs
|
||||
# Sites may override these definitions in CONFIG_SITE.osf-alpha-gnu.osf-alpha-gnu
|
||||
#-------------------------------------------------------
|
||||
|
||||
CC = gcc
|
||||
CCC = g++
|
||||
CPP = $(CC) -E
|
||||
RANLIB =
|
||||
AR = ar -r
|
||||
LD = -r
|
||||
|
||||
# Configure OS vendor C compiler
|
||||
CONFORM_CFLAGS_ANSI =
|
||||
CONFORM_CFLAGS_STRICT =
|
||||
CONFORM_CFLAGS_TRAD =
|
||||
CODE_CFLAGS =
|
||||
WARN_CFLAGS_YES =
|
||||
WARN_CFLAGS_NO = -w
|
||||
OPT_CFLAGS_YES = -O
|
||||
OPT_CFLAGS_NO = -g
|
||||
|
||||
# Configure OS vendor C++ compiler
|
||||
CONFORM_CXXFLAGS_NORMAL =
|
||||
CONFORM_CXXFLAGS_STRICT =
|
||||
PROF_CXXFLAGS_YES = +p
|
||||
PROF_CXXFLAGS_NO =
|
||||
CODE_CXXFLAGS =
|
||||
WARN_CXXFLAGS_YES =
|
||||
WARN_CXXFLAGS_NO =
|
||||
OPT_CXXFLAGS_YES = -O
|
||||
OPT_CXXFLAGS_NO = -g
|
||||
|
||||
STATIC_LDFLAGS_YES= -Bstatic
|
||||
STATIC_LDFLAGS_NO=
|
||||
STATIC_LDLIBS_YES= -Bdynamic
|
||||
STATIC_LDLIBS_NO=
|
||||
|
||||
SHRLIB_LDFLAGS = -shared
|
||||
LOADABLE_SHRLIB_LDFLAGS = $(SHRLIB_LDFLAGS)
|
||||
|
||||
12
configure/os/CONFIG.osf-alpha.Common
Normal file
12
configure/os/CONFIG.osf-alpha.Common
Normal file
@@ -0,0 +1,12 @@
|
||||
# CONFIG.osf-alpha.Common
|
||||
#
|
||||
# $Id$
|
||||
# This file is maintained by the build community.
|
||||
#
|
||||
# Definitions for osf-alpha host archs
|
||||
# Sites may override these definitions in CONFIG_SITE.osf-alpha.Common
|
||||
#-------------------------------------------------------
|
||||
|
||||
#Include definitions common to unix hosts
|
||||
include $(CONFIG)/os/CONFIG.UnixCommon.Common
|
||||
|
||||
49
configure/os/CONFIG.osf-alpha.osf-alpha
Normal file
49
configure/os/CONFIG.osf-alpha.osf-alpha
Normal file
@@ -0,0 +1,49 @@
|
||||
# CONFIG.osf-alpha.osf-alpha
|
||||
#
|
||||
# $Id$
|
||||
# This file is maintained by the build community.
|
||||
#
|
||||
# Definitions for osf-alpha host archs
|
||||
# Sites may override these definitions in CONFIG_SITE.osf-alpha.osf-alpha
|
||||
#-------------------------------------------------------
|
||||
|
||||
CC = cc
|
||||
CCC = cxx
|
||||
CPP = $(CC) -E
|
||||
RANLIB =
|
||||
AR = ar -r
|
||||
LD = -r
|
||||
|
||||
# Configure OS vendor C compiler
|
||||
CONFORM_CFLAGS_ANSI = -std
|
||||
CONFORM_CFLAGS_STRICT = -std1
|
||||
CONFORM_CFLAGS_TRAD = -std0
|
||||
CODE_CFLAGS =
|
||||
WARN_CFLAGS_YES =
|
||||
WARN_CFLAGS_NO = -w
|
||||
OPT_CFLAGS_YES = -O
|
||||
OPT_CFLAGS_NO = -g
|
||||
|
||||
# Configure OS vendor C++ compiler
|
||||
CONFORM_CXXFLAGS_NORMAL =
|
||||
CONFORM_CXXFLAGS_STRICT = -std gnu
|
||||
PROF_CXXFLAGS_YES = +p
|
||||
PROF_CXXFLAGS_NO =
|
||||
CODE_CXXFLAGS =
|
||||
WARN_CXXFLAGS_YES =
|
||||
WARN_CXXFLAGS_NO =
|
||||
OPT_CXXFLAGS_YES = -O
|
||||
OPT_CXXFLAGS_NO = -g
|
||||
|
||||
STATIC_LDFLAGS_YES= -Bstatic
|
||||
STATIC_LDFLAGS_NO=
|
||||
STATIC_LDLIBS_YES= -Bdynamic
|
||||
STATIC_LDLIBS_NO=
|
||||
|
||||
SHRLIB_LDFLAGS = -shared
|
||||
LOADABLE_SHRLIB_LDFLAGS = $(SHRLIB_LDFLAGS)
|
||||
|
||||
############# ???????????
|
||||
#####ACC_SFLAGS_YES= -non_shared
|
||||
#####ACC_SFLAGS_NO= -call_shared
|
||||
|
||||
@@ -52,7 +52,7 @@ STATIC_LDFLAGS_NO=
|
||||
STATIC_LDLIBS_YES= -Bdynamic
|
||||
STATIC_LDLIBS_NO=
|
||||
|
||||
SHRLIB_CFLAGS = -KPIC
|
||||
SHRLIB_CFLAGS = -xcode=pic32
|
||||
SHRLIB_LDFLAGS = -z defs -G -h $@ -z text
|
||||
LOADABLE_SHRLIB_LDFLAGS = -G -h $@ -z text
|
||||
|
||||
|
||||
@@ -299,9 +299,9 @@ LINK.cpp = $(WINLINK) -nologo $(STATIC_LDFLAGS) $(LDFLAGS) $(PROD_LDFLAGS) -out:
|
||||
# useManifestTool.pl returns 0(don't use) or 1(use).
|
||||
#
|
||||
ifeq ($(shell $(PERL) $(TOOLS)/useManifestTool.pl),1)
|
||||
MT_DLL_COMMAND = mt.exe /manifest $@.manifest /outputresource:$@;\#2
|
||||
MT_DLL_COMMAND = mt.exe /manifest $@.manifest "/outputresource:$@;\#2"
|
||||
MT_EXE_COMMAND_YES =
|
||||
MT_EXE_COMMAND_NO = mt.exe /manifest $@.manifest /outputresource:$@;\#1
|
||||
MT_EXE_COMMAND_NO = mt.exe /manifest $@.manifest "/outputresource:$@;\#1"
|
||||
MT_EXE_COMMAND = $(MT_EXE_COMMAND_$(STATIC_BUILD))
|
||||
endif
|
||||
|
||||
|
||||
@@ -10,9 +10,10 @@
|
||||
# to $(INSTALL_LOCATION)/lib/$(EPICS_HOST_ARCH) (or wherever you install
|
||||
# the EPICS shared libraries on your system) when invoking base
|
||||
# executables, or
|
||||
# b) Add the path to SHRLIB_SEARCH_FULLPATHDIRS below, which will burn
|
||||
# b) Add the path to SHRLIB_DEPLIB_DIRS and PROD_DEPLIB_DIRS below, which will burn
|
||||
# the runtime search path into the executables.
|
||||
#SHARED_LIBRARIES=YES
|
||||
|
||||
# This is the absolute path to the generic INSTALL_LOCATION, for SHARED_LIBRARY searches.
|
||||
SHRLIB_SEARCH_FULLPATHDIRS += /opt/epics/R$(EPICS_SHORT_VERSION)/base/$(EPICS_VERSION)-$(EPICS_REVISION)-$(EPICS_MODIFICATION)-$(EPICS_PATCH_LEVEL)$(EPICS_CVS_SNAPSHOT)$(EPICS_SITE_VSTRING)/lib/$(EPICS_HOST_ARCH)
|
||||
SHRLIB_DEPLIB_DIRS += /opt/epics/R$(EPICS_SHORT_VERSION)/base/$(EPICS_VERSION)-$(EPICS_REVISION)-$(EPICS_MODIFICATION)-$(EPICS_PATCH_LEVEL)$(EPICS_CVS_SNAPSHOT)$(EPICS_SITE_VSTRING)/lib/$(EPICS_HOST_ARCH)
|
||||
PROD_DEPLIB_DIRS += /opt/epics/R$(EPICS_SHORT_VERSION)/base/$(EPICS_VERSION)-$(EPICS_REVISION)-$(EPICS_MODIFICATION)-$(EPICS_PATCH_LEVEL)$(EPICS_CVS_SNAPSHOT)$(EPICS_SITE_VSTRING)/lib/$(EPICS_HOST_ARCH)
|
||||
|
||||
@@ -12,8 +12,8 @@
|
||||
# a) LD_LIBRARY_PATH must include the full absolute pathname to
|
||||
# $(INSTALL_LOCATION)/lib/$(EPICS_HOST_ARCH) when invoking base
|
||||
# executables.
|
||||
# b) Add the runtime path to SHRLIB_SEARCH_FULLPATHDIRS, which will add
|
||||
# the named directory to the list contained in the executables.
|
||||
# b) Add the runtime path to SHRLIB_DEPLIB_DIRS and PROD_DEPLIB_DIRS, which
|
||||
# will add the named directory to the list contained in the executables.
|
||||
# c) Add the runtime path to /etc/ld.so.conf and run ldconfig
|
||||
# to inform the system of the shared library location.
|
||||
|
||||
|
||||
@@ -12,8 +12,8 @@
|
||||
# a) LD_LIBRARY_PATH must include the full absolute pathname to
|
||||
# $(INSTALL_LOCATION)/lib/$(EPICS_HOST_ARCH) when invoking base
|
||||
# executables.
|
||||
# b) Add the runtime path to SHRLIB_SEARCH_DIRS, which will add
|
||||
# the named directory to the list contained in the executables.
|
||||
# b) Add the runtime path to SHRLIB_DEPLIB_DIRS and PROD_DEPLIB_DIRS, which
|
||||
# will add the named directory to the list contained in the executables.
|
||||
# c) Add the runtime path to /etc/ld.so.conf and run ldconfig
|
||||
# to inform the system of the shared library location.
|
||||
|
||||
|
||||
6
configure/os/CONFIG_SITE.Common.vxWorks-mpc8540
Normal file
6
configure/os/CONFIG_SITE.Common.vxWorks-mpc8540
Normal file
@@ -0,0 +1,6 @@
|
||||
# $Id$
|
||||
#
|
||||
# Site Specific definitions for the vxWorks-mpc8540 target
|
||||
#
|
||||
# Only the local epics system manager should modify this file
|
||||
#-------------------------------------------------------
|
||||
7
configure/os/CONFIG_SITE.Common.vxWorks-ppc603
Normal file
7
configure/os/CONFIG_SITE.Common.vxWorks-ppc603
Normal file
@@ -0,0 +1,7 @@
|
||||
# $Id$
|
||||
#
|
||||
# Site Specific definitions for the vxWorks-ppc603 target
|
||||
#
|
||||
# Only the local epics system manager should modify this file
|
||||
#-------------------------------------------------------
|
||||
|
||||
10
configure/os/CONFIG_SITE.Common.vxWorks-ppc603_long
Normal file
10
configure/os/CONFIG_SITE.Common.vxWorks-ppc603_long
Normal file
@@ -0,0 +1,10 @@
|
||||
# $Id$
|
||||
#
|
||||
# Site Specific definitions for the vxWorks-ppc603_long target
|
||||
#
|
||||
# Only the local epics system manager should modify this file
|
||||
#-------------------------------------------------------
|
||||
|
||||
# Inherit the settings from vxWorks-ppc603
|
||||
-include $(CONFIG)/os/CONFIG_SITE.Common.vxWorks-ppc603
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
# CONFIG_SITE.Common.vxWorks-ppc604
|
||||
#
|
||||
# $Id$
|
||||
#
|
||||
# Site Specific definitions for vxWorks-ppc604 target
|
||||
# Site Specific definitions for the vxWorks-ppc604 target
|
||||
#
|
||||
# Only the local epics system manager should modify this file
|
||||
|
||||
#-------------------------------------------------------
|
||||
|
||||
|
||||
10
configure/os/CONFIG_SITE.Common.vxWorks-ppc604_altivec
Normal file
10
configure/os/CONFIG_SITE.Common.vxWorks-ppc604_altivec
Normal file
@@ -0,0 +1,10 @@
|
||||
# $Id$
|
||||
#
|
||||
# Site Specific definitions for the vxWorks-ppc604_altivec target
|
||||
#
|
||||
# Only the local epics system manager should modify this file
|
||||
#-------------------------------------------------------
|
||||
|
||||
# Inherit the settings from vxWorks-ppc604_long
|
||||
-include $(CONFIG)/os/CONFIG_SITE.Common.vxWorks-ppc604_long
|
||||
|
||||
@@ -1,8 +1,10 @@
|
||||
# CONFIG_SITE.Common.vxWorks-ppc604
|
||||
#
|
||||
# $Id$
|
||||
#
|
||||
# Site Specific definitions for vxWorks-ppc604 target
|
||||
# Site Specific definitions for the vxWorks-ppc604_long target
|
||||
#
|
||||
# Only the local epics system manager should modify this file
|
||||
#-------------------------------------------------------
|
||||
|
||||
# Inherit the settings from vxWorks-ppc604
|
||||
-include $(CONFIG)/os/CONFIG_SITE.Common.vxWorks-ppc604
|
||||
|
||||
|
||||
@@ -5,4 +5,8 @@
|
||||
# Site specific definitions for linux-x86 host - linux-arm target builds
|
||||
#-------------------------------------------------------
|
||||
|
||||
# Diamond:
|
||||
#GNU_DIR = /home/targetOS/linux-arm/host/x86-linux/gcc_3.3.3
|
||||
|
||||
# anj@aps:
|
||||
#GNU_DIR = /local/anj/cross-arm/gcc-3.4.5-glibc-2.3.6/arm-linux
|
||||
|
||||
@@ -1,16 +1,7 @@
|
||||
# CONFIG_SITE.linux-x86.vxWorks-ppc603
|
||||
#
|
||||
# $Id$
|
||||
# This file is maintained by the build community.
|
||||
#
|
||||
# Site override definitions for linux-x86 host - vxWorks-ppc603 target builds
|
||||
# Site-specific definitions for linux-x86 builds of vxWorks-ppc603
|
||||
#
|
||||
# Only the local epics system manager should modify this file
|
||||
#-------------------------------------------------------
|
||||
|
||||
# ORNL SNS overrides for cross compilers
|
||||
#VX_DIR_YES = /opt/tornado20/
|
||||
#VX_CONFIG_DIR_YES = $(VX_DIR)/target/config
|
||||
#VX_INCLUDE_YES = /usr/local/crossgcc/ppc/powerpc-wrs-vxworks/sys-include
|
||||
#VX_GNU_YES = /usr/local/crossgcc/ppc/
|
||||
#VX_GNU_BIN_YES = $(VX_GNU)/bin
|
||||
#VX_GNU_LIB_YES = /usr/local/crossgcc/ppc/lib/gcc-lib/powerpc-wrs-vxworks/2.95.2
|
||||
|
||||
|
||||
@@ -1,15 +1,9 @@
|
||||
# CONFIG_SITE.linux-x86.vxWorks-ppc603_long
|
||||
#
|
||||
# $Id$
|
||||
# This file is maintained by the build community.
|
||||
#
|
||||
# Site override definitions for linux-x86 host - vxWorks-ppc603_long target builds
|
||||
# Site-specific definitions for linux-x86 builds of vxWorks-ppc603_long
|
||||
#
|
||||
# Only the local epics system manager should modify this file
|
||||
#-------------------------------------------------------
|
||||
|
||||
# ORNL SNS overrides for cross compilers
|
||||
#GNU_DIR=/ade/vxWorks/crossgcc-2.7.2-WRS/ppc
|
||||
#GNU_TARGET_INCLUDE_DIR=/ade/vxWorks/crossgcc-2.7.2-WRS/ppc/powerpc-wrs-vxworks/sys-include
|
||||
#CC = /ade/vxWorks/crossgcc-2.7.2-WRS/ppc/bin/cc$(CMPLR_SUFFIX)
|
||||
#CCC = /ade/vxWorks/crossgcc-2.7.2-WRS/ppc/bin/g++$(CMPLR_SUFFIX)
|
||||
|
||||
|
||||
# Inherit settings from vxWorks-ppc603
|
||||
-include $(CONFIG)/os/CONFIG_SITE.linux-x86.vxWorks-ppc603
|
||||
|
||||
@@ -1,17 +1,6 @@
|
||||
# CONFIG_SITE.linux-x86_64.vxWorks-ppc603
|
||||
#
|
||||
# $Id$
|
||||
# This file is maintained by the build community.
|
||||
#
|
||||
# Site override definitions for linux-x86_64 host - vxWorks-ppc603 target builds
|
||||
# Site-specific definitions for linux-x86_64 builds of vxWorks-ppc603
|
||||
#
|
||||
# Only the local epics system manager should modify this file
|
||||
#-------------------------------------------------------
|
||||
# This file contains overrides for Vx builds
|
||||
# ORNL SNS overrides for cross compilers
|
||||
|
||||
# The custom cross compiler for VxWorks on Linux
|
||||
# has place in a directory structure like that of
|
||||
# the Solaris distribution. So now the cross should
|
||||
# only need the following line.
|
||||
# cross-compiler from "Linux x86pc" host to a "ppc603" target
|
||||
VX_DIR_YES = /ade/vxWorks/t202/ppc
|
||||
|
||||
|
||||
@@ -1,17 +1,9 @@
|
||||
# CONFIG_SITE.linux-x86_64.vxWorks-ppc603_long
|
||||
#
|
||||
# $Id$
|
||||
# This file is maintained by the build community.
|
||||
#
|
||||
# Site override definitions for linux-x86_64 host - vxWorks-ppc603 target builds
|
||||
# Site-specific definitions for linux-x86 builds of vxWorks-ppc603_long
|
||||
#
|
||||
# Only the local epics system manager should modify this file
|
||||
#-------------------------------------------------------
|
||||
# This file contains overrides for Vx builds
|
||||
# ORNL SNS overrides for cross compilers
|
||||
|
||||
# The custom cross compiler for VxWorks on Linux
|
||||
# has place in a directory structure like that of
|
||||
# the Solaris distribution. So now the cross should
|
||||
# only need the following line.
|
||||
# cross-compiler from "Linux x86pc" host to a "ppc603" target
|
||||
VX_DIR_YES = /ade/vxWorks/t202/ppc
|
||||
|
||||
# Inherit settings from vxWorks-ppc603
|
||||
-include $(CONFIG)/os/CONFIG_SITE.linux-x86_64.vxWorks-ppc603
|
||||
|
||||
@@ -0,0 +1,4 @@
|
||||
|
||||
# Shared libraries are not yet supported in cygwin builds.
|
||||
SHARED_LIBRARIES=NO
|
||||
|
||||
@@ -337,7 +337,9 @@ sub UnixPath {
|
||||
|
||||
sub LocalPath {
|
||||
my ($newpath) = @_;
|
||||
if ($^O eq "darwin") {
|
||||
if ($^O eq "cygwin") {
|
||||
$newpath =~ s{^/cygdrive/([a-zA-Z])/}{$1:/};
|
||||
} elsif ($^O eq "darwin") {
|
||||
# These rules are likely to be site-specific
|
||||
$newpath =~ s{^/private/var/auto\.home/}{/home/}; # APS
|
||||
}
|
||||
|
||||
@@ -25,13 +25,9 @@
|
||||
#-----------------------------------------------------------------------
|
||||
|
||||
use Getopt::Std;
|
||||
use Text::Wrap;
|
||||
|
||||
$Text::Wrap::columns = 76;
|
||||
|
||||
my $version = 'mkmf.pl,v 1.5 2002/03/25 21:33:24 jba Exp $ ';
|
||||
my $endline = $/;
|
||||
my %delim_match = ( q/'/ => q/'/, q/"/ => q/"/);
|
||||
my %output;
|
||||
my @includes;
|
||||
|
||||
@@ -75,7 +71,7 @@ print "\n ALL DONE \n\n" if $debug;
|
||||
sub printList{
|
||||
my $depFile = shift;
|
||||
my $objFile = shift;
|
||||
my $line;
|
||||
my $file;
|
||||
|
||||
unlink($depFile) or die "Can't delete $depFile: $!\n" if -f $depFile;
|
||||
|
||||
@@ -85,20 +81,10 @@ sub printList{
|
||||
|
||||
print "# DO NOT EDIT: This file created by $version\n\n";
|
||||
|
||||
local $: = " \t\n"; # remove hyphen from word boundary defaults
|
||||
|
||||
$line = "$objFile : @includes";
|
||||
$fmtline = wrap ("", " ", $line);
|
||||
$fmtline =~ s/\n/ \\\n/mg;
|
||||
print $fmtline;
|
||||
|
||||
print "\n\n";
|
||||
print "#Depend files must be targets to avoid 'No rule to make target ...' errors\n";
|
||||
|
||||
#$line = "@includes";
|
||||
foreach $file (@includes) {
|
||||
print "$file :\n";
|
||||
print "$objFile : $file\n";
|
||||
}
|
||||
print "\n\n";
|
||||
|
||||
select($old_handle) ; # in this case, STDOUT
|
||||
}
|
||||
@@ -139,10 +125,10 @@ sub findNextIncName {
|
||||
my $dir;
|
||||
|
||||
local $/ = $endline;
|
||||
return 0 if !($line =~ m/^[ ]*\#?[ ]*include/);
|
||||
return 0 if !($line =~ /^[\#?\s]*include\s*(['""'<])([\w\.\/]*)$delim_match{\1}/ix);
|
||||
return 0 if !$2;
|
||||
$incname = $2;
|
||||
return 0 if not $line =~ /^\s*#?\s*include\s*(<.*?>|".*?")/;
|
||||
$incname = substr $1, 1, length($1)-2;
|
||||
print "DEBUG: $incname\n" if $debug;
|
||||
|
||||
|
||||
return $incname if -f $incname;
|
||||
return 0 if ( $incname =~ /^\// || $incname =~ /^\\/ );
|
||||
@@ -155,4 +141,3 @@ sub findNextIncName {
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
@@ -9,16 +9,21 @@
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<h1 style="text-align: center">EPICS Base R3.14.8: Known Problems</h1>
|
||||
<h1 style="text-align: center">EPICS Base R3.14.9: Known Problems</h1>
|
||||
|
||||
<ul>
|
||||
<li>The new architectures <tt>linux-x86_64</tt> and <tt>solaris-sparc64</tt>
|
||||
are known to not work yet; do not attempt do use them, although if you need
|
||||
either one an offer to help find the problems would be welcomed.</li>
|
||||
<li>It is not possible to build a statically linked version of base on
|
||||
HP-UX. If you need this and manage to work out how, please tell us!</li>
|
||||
<li>We have had problems with the linux-x86 target running on the Linux
|
||||
2.6.10 kernel, but these disappeared with later kernel versions.</li>
|
||||
<li>It is not possible to build this version of base on HP-UX due to C++
|
||||
issues which appear to be bugs in the HP-UX compiler.</li>
|
||||
<li>When shutting down any CA client or IOC on a recent version of GNU/Linux
|
||||
(one that includes the NPTL threading library) the following message may
|
||||
appear, possibly preceeded by a message about a thread terminating due to a
|
||||
C++ exception:
|
||||
<blockquote><pre>FATAL: exception not rethrown</pre></blockquote>
|
||||
An <tt>Abort</tt> message and a core-dump may also be generated if the
|
||||
user's settings allow this. The error is caused by the implementation of the
|
||||
pthread_cancel() mechanism in NPTL, which uses the C++ exception mechanism
|
||||
without providing any means to distinguish the cancel exception to regular
|
||||
C++ exception handlers.</li>
|
||||
</ul>
|
||||
|
||||
</body>
|
||||
|
||||
@@ -152,6 +152,8 @@ Software requirements</h3>
|
||||
<blockquote><b>GNU make</b>
|
||||
<br>You must use GNU make, gnumake, for any EPICS builds. Set your
|
||||
path so that a gnumake version 3.78.1 or later is available.
|
||||
<p><b>gcc</b>
|
||||
<br>You must have gcc version 3.4.2 or later.
|
||||
<p><b>Perl</b>
|
||||
<br>You must have perl version 5.0 or later installed. The configure files
|
||||
do not specify the perl full pathname. You need the perl executable
|
||||
|
||||
78
documentation/README.tru64unix
Normal file
78
documentation/README.tru64unix
Normal file
@@ -0,0 +1,78 @@
|
||||
Compiling EPICS and Building IOC Applications on Tru64Unix/Alpha
|
||||
(former Digital-Unix, and even former OSF1)
|
||||
for architectures "osf-alpha" and "osf-alpha-gnu"
|
||||
|
||||
======================================================================
|
||||
|
||||
Tools needed
|
||||
------------
|
||||
|
||||
For C/C++ Compiler, you need one of these compiler set.
|
||||
|
||||
- DEC/Compaq/HP's ANSI C/C++ compilers for "osf-alpha"
|
||||
I used
|
||||
cc -V
|
||||
Compaq C V6.5-303 (dtk) on Compaq Tru64 UNIX V5.1B (Rev. 2650)
|
||||
Compiler Driver V6.5-302 (dtk) cc Driver
|
||||
cxx -V
|
||||
Compaq C++ V6.5-042 for Compaq Tru64 UNIX V5.1B (Rev. 2650)
|
||||
Compiler Driver V6.5-042 (cxx) cxx Driver
|
||||
|
||||
- GNU gcc/g++ compiler for "osf-alpha-gnu"
|
||||
I used
|
||||
gcc --version
|
||||
gcc (GCC) 3.4.3
|
||||
|
||||
Environment
|
||||
-----------
|
||||
|
||||
Before compiling, please set the environment variable EPICS_HOST_ARCH
|
||||
dependent on your compiler.
|
||||
|
||||
for cc/cxx
|
||||
setenv EPICS_HOST_ARCH osf-alpha
|
||||
(setenv EPICS_HOST_ARCH `startup/EpicsHostArch.pl`)
|
||||
export EPICS_HOST_ARCH=osf-alpha
|
||||
|
||||
for gcc/g++
|
||||
setenv EPICS_HOST_ARCH osf-alpha-gnu
|
||||
(setenv EPICS_HOST_ARCH `startup/EpicsHostArch.pl gnu`)
|
||||
export EPICS_HOST_ARCH=osf-alpha-gnu
|
||||
|
||||
Building
|
||||
--------
|
||||
|
||||
Should be quite straightforward. Edit (if necessary) the CONFIG_SITE
|
||||
files and "make". (Be sure that GNU make is in your path or call it
|
||||
explicitly as the standard make on Tru64Unix is _not_ GNU.)
|
||||
|
||||
For example (with csh):
|
||||
setenv EPICS_HOST_ARCH `startup/EpicsHostArch.pl`
|
||||
make |& tee ../make-base-osf.log
|
||||
make runtests | & tee ../test-base-osf.log
|
||||
setenv EPICS_HOST_ARCH `startup/EpicsHostArch.pl gnu`
|
||||
make |& tee ../make-base-osfgnu.log
|
||||
|
||||
Minor errors are detected in and timer. They should be investigated
|
||||
later.
|
||||
|
||||
Some internals
|
||||
-----------------------
|
||||
|
||||
__alpha is used to distinguish this architecture from others.
|
||||
__DECCXX is used to distinguish DEC/Compaq/HP C++ compiler from GNU's.
|
||||
There are several ways to specify compiler options for pthread.
|
||||
Please consult the pthread(3) manual page.
|
||||
src/libCom/osi/os/osf is used for osi definitions,
|
||||
src/libCom/osi/os/alpha is not used.
|
||||
About 230 warning messages with cc/cxx, and 4 with gcc. Sometimes
|
||||
errors from cxx are intuitive.
|
||||
I just started to use IOC application for a gateway purpose. There
|
||||
can be architecture-dependent problems, that I didn't find yet.
|
||||
|
||||
Only several lines in configure and src files were modified from
|
||||
base-3.14.4/5/6/7/8/8.2/9pre. Thanks the core team for keeping
|
||||
the alpha-osf dependent part in the distribution.
|
||||
|
||||
<URL:http://www-linac.kek.jp/jk/osf/>
|
||||
Kazuro Furukawa <kazuro.furukawa at kek.jp>
|
||||
@@ -9,10 +9,51 @@
|
||||
<body lang="en">
|
||||
<h1 align="center">EPICS Base Release 3.14.x</h1>
|
||||
|
||||
<h2 align="center">Changes since 3.14.8.2</h2>
|
||||
<h2 align="center">Changes between 3.14.8.2 and 3.14.9</h2>
|
||||
|
||||
<!-- Insert new items below here ... -->
|
||||
|
||||
<h4>Cygwin Builds</h4>
|
||||
|
||||
<p>The cygwin make version 3.81-1 does not handle MS-DOS path names and thus
|
||||
does not work for EPICS builds with RELEASE file definitions. From the
|
||||
discussion on the cygwin mailing list it looks like this will be fixed in make
|
||||
version 3.82. In the meantime make version 3.80 or a fixed make can be
|
||||
downloaded from
|
||||
<a href="https://projects.coin-or.org/BuildTools/wiki/current-issues">this
|
||||
website</a>.
|
||||
|
||||
<h4>New Architectures</h4>
|
||||
|
||||
<p>The following target architectures have been added to this release, although
|
||||
the core developers lack the ability to test all of them:</p>
|
||||
|
||||
<ul>
|
||||
<li>darwin-ppcx86</li>
|
||||
<li>darwin-x86</li>
|
||||
<li>freebsd-x86</li>
|
||||
<li>freebsd-x86_64</li>
|
||||
<li>interix-x86</li>
|
||||
<li>linux-arm</li>
|
||||
<li>osf-alpha</li>
|
||||
<li>osf-alpha-gnu</li>
|
||||
<li>vxWorks-mpc8540</li>
|
||||
<li>vxWorks-ppc604_altivec</li>
|
||||
</ul>
|
||||
|
||||
<h4>vxWorks compiler optimization level</h4>
|
||||
|
||||
<p>Wind River Systems do not support optimization levels beyond <tt>-O2</tt> for
|
||||
vxWorks applications compiled using gcc, so optimized vxWorks builds are now set
|
||||
to <tt>-O2</tt> only (we currently use <tt>-O3</tt> everywhere else).</p>
|
||||
|
||||
<h4>cas</h4>
|
||||
|
||||
<p>There was a bug in the portable channel access server library that prevented
|
||||
the PV Gateway from being able to handle and pass on alarm acknowledgements from
|
||||
the EPICS Alarm Handler ALH. This has been fixed in this release and should only
|
||||
require that the gatewey be recomplied against this version of Base.</p>
|
||||
|
||||
<h4>dbLoadTemplate</h4>
|
||||
|
||||
<p>The parser for the substitutions file accepted by dbLoadTemplate() has been
|
||||
@@ -32,7 +73,8 @@ _ - + : . / \ [ ] < > ;</tt></p>
|
||||
use C89-compatible escaped character codes such as \", \', \t, \n, \064 and
|
||||
\x7e. The parser also now checks for and reports strings that have a newline
|
||||
character in them as an error - if you want a newline in a field, use the \n
|
||||
escaped version.</p>
|
||||
escaped version. These escapes only apply to the value part of a field() entry
|
||||
in .db file though; no other strings have escape codes translated.</p>
|
||||
|
||||
<h4>libCom/test and db/test</h4>
|
||||
|
||||
@@ -49,12 +91,12 @@ humans.</p>
|
||||
the test programs in a suitable order. At a vxWorks target shell, type:</p>
|
||||
|
||||
<blockquote>
|
||||
<pre>ld </path/to/base/bin/vxWorks-<i>arch</i>/vxTestHarness.munch
|
||||
<pre>ld </path/to/base/bin/vxWorks-<i>arch</i>/vxTestHarness.munch
|
||||
cd "/path/to/writable/directory"
|
||||
epicsRunLibComTests</pre>
|
||||
</blockquote>
|
||||
|
||||
<p>On RTEMS, boot the bin/<i>arch</i>/rtemsTestHarness binary.</p>
|
||||
<p>On RTEMS, boot the <tt>bin/<i>arch</i>/rtemsTestHarness</tt> binary.</p>
|
||||
|
||||
<p>You may wish to capture the output from running these to a file to more
|
||||
easily check the results, since there is no wrapper program to collect and
|
||||
@@ -98,7 +140,7 @@ separated by a semicolon <tt>;</tt>, all but one of which must be assignments.
|
||||
The value of the whole string is determined by the single non-assignment
|
||||
expression, which may appear anywhere in the string. For example, the following
|
||||
string causes a single CALC record to output the successive values of a sine
|
||||
curve: <tt>sin(a); a:=a+d2r</tt></p>
|
||||
curve in 1 degree intervals: <tt>sin(a); a:=a+d2r</tt></p>
|
||||
|
||||
<p>Previously any expression that performed an invalid operation which would
|
||||
generate a NaN or Inf result would be stopped immediately and return an error to
|
||||
@@ -110,7 +152,7 @@ infinity. To permit this to be checked within the expression, the new operators
|
||||
expression language. The literal values <tt>Inf</tt> and <tt>NaN</tt> are also
|
||||
now supported in expressions.</p>
|
||||
|
||||
<p>The incompatible change to the expression language was to change the
|
||||
<p>The only incompatible change to the expression language was to change the
|
||||
<tt>NOT</tt> operator from performing a unary minus operation to an integer
|
||||
bitwise not; the former meaning is illogical and as a result was probably not
|
||||
used much, if at all — nobody complained when I discussed this on
|
||||
@@ -197,8 +239,6 @@ before reading values from NVRAM and
|
||||
epicsRtemsInitPostSetBootConfigFromNVRAM just afterwards. See
|
||||
epicsRtemsInitHooks.h for prototypes and global variables.</p>
|
||||
|
||||
<h4>libCom</h4>
|
||||
|
||||
<h4>e_flex</h4>
|
||||
|
||||
<p><tt>e_flex</tt> has been modified to accept DOS line endings as well as Unix
|
||||
@@ -234,7 +274,7 @@ which will run on both PowerPC and Intel x86 targets.</p>
|
||||
<p>Added support for EPICS_HOST_ARCH=darwin-x86.</p>
|
||||
|
||||
|
||||
<h2 align="center">Changes since 3.14.8.1</h2>
|
||||
<h2 align="center">Changes between 3.14.8.1 and 3.14.8.2</h2>
|
||||
|
||||
<h4>epicsStrtod</h4>
|
||||
|
||||
@@ -244,7 +284,7 @@ managed to break the use of this in the R3.14.8.1 release. This is now
|
||||
fixed.</p>
|
||||
|
||||
|
||||
<h2 align="center">Changes since 3.14.8</h2>
|
||||
<h2 align="center">Changes between 3.14.8 and 3.14.8.1</h2>
|
||||
|
||||
<h4>Version Numbering</h4>
|
||||
|
||||
@@ -291,7 +331,7 @@ win32 architectures.</p>
|
||||
</ul>
|
||||
|
||||
|
||||
<h2 align="center">Changes since 3.14.7</h2>
|
||||
<h2 align="center">Changes between 3.14.7 and 3.14.8</h2>
|
||||
|
||||
<h4>New host targets</h4>
|
||||
|
||||
@@ -509,7 +549,7 @@ could not be created. This is fixed.</p>
|
||||
<p>222 - osiSpawnDetachedProcess doesnt close open files in dupicate process
|
||||
on POSIX</p>
|
||||
|
||||
<h2 align="center">Changes since 3.14.6</h2>
|
||||
<h2 align="center">Changes between 3.14.6 and 3.14.7</h2>
|
||||
|
||||
<h4>selRecord</h4>
|
||||
|
||||
@@ -643,7 +683,7 @@ can cause an IOC to crash.</p>
|
||||
when the ARCH defined in the ioc*/Makefile is present in BUILD_ARCHS for the
|
||||
build.</p>
|
||||
|
||||
<h2 align="center">Changes since 3.14.5</h2>
|
||||
<h2 align="center">Changes between 3.14.5 and 3.14.6</h2>
|
||||
|
||||
<h4>CA command line tools complete</h4>
|
||||
|
||||
@@ -895,7 +935,7 @@ channels)</p>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<h2 align="center">Changes since 3.14.4</h2>
|
||||
<h2 align="center">Changes between 3.14.4 and 3.14.5</h2>
|
||||
|
||||
<h4>dbtr</h4>
|
||||
|
||||
@@ -1075,7 +1115,7 @@ command, add <code>registrar(iocshSystemCommand)</code> to an application
|
||||
database description file.</p>
|
||||
|
||||
<center>
|
||||
<h2>Changes since 3.14.3</h2>
|
||||
<h2>Changes between 3.14.3 and 3.14.4</h2>
|
||||
</center>
|
||||
|
||||
<h4>sCalcPostfix</h4>
|
||||
@@ -1127,7 +1167,7 @@ successfully connects.</p>
|
||||
assisting with identifying the cause.</p>
|
||||
|
||||
<center>
|
||||
<h2>Changes since 3.14.2</h2>
|
||||
<h2>Changes between 3.14.2 and 3.14.3</h2>
|
||||
</center>
|
||||
|
||||
<h4>TPRO output</h4>
|
||||
@@ -1330,7 +1370,7 @@ symptom was a hang during process exit. A workaround was installed.</p>
|
||||
branch off of BSD and therefore requires socket option SO_REUSEPORT.</p>
|
||||
|
||||
<center>
|
||||
<h2>Changes since 3.14.1</h2>
|
||||
<h2>Changes between 3.14.1 and 3.14.2</h2>
|
||||
</center>
|
||||
|
||||
<p><strong>Build System</strong></p>
|
||||
@@ -1417,7 +1457,7 @@ that it ignores case.</p>
|
||||
macParseDefns was not correct.</p>
|
||||
|
||||
<center>
|
||||
<h2>Changes since beta2</h2>
|
||||
<h2>Changes between 3.14.0beta2 and 3.14.1</h2>
|
||||
</center>
|
||||
|
||||
<p><strong>function - New Database Definition Keyword</strong></p>
|
||||
|
||||
@@ -18,8 +18,23 @@
|
||||
new release of EPICS Base. Additions and ammendments to this list are
|
||||
welcome.</p>
|
||||
|
||||
<h3>The Release Process</h3>
|
||||
|
||||
<p>The version released on the Feature Freeze date is designated the first
|
||||
pre-release, <tt>-pre1</tt>. The first Release Candidate <tt>-RC1</tt> is the
|
||||
first version that has undergone widespread testing and which has no known
|
||||
problems in it that are slated to be fixed in this release. New versions should
|
||||
be made at about weekly intervals during the testing and debugging process, and
|
||||
will be designated as either pre-release versions or Release Candidates by the
|
||||
Release Manager. A Release Candidate that has received widespread testing for a
|
||||
week without any additional problems being discovered or CVS commits being made
|
||||
can be designated as the final release.</p>
|
||||
|
||||
<h3>Roles</h3>
|
||||
|
||||
<p>The following roles are used, in addition to the names of individuals who
|
||||
have been responsible for specific tasks in the past:</p>
|
||||
|
||||
<dl>
|
||||
<dt><strong>Release Manager</strong></dt>
|
||||
<dd>Responsible for the release</dd>
|
||||
@@ -27,8 +42,6 @@ have been responsible for specific tasks in the past:</p>
|
||||
<dd>Responsible for individual operating system platforms</dd>
|
||||
</dl>
|
||||
|
||||
<p></p>
|
||||
|
||||
<table border="1" width="100%">
|
||||
<tbody>
|
||||
<tr>
|
||||
@@ -55,13 +68,15 @@ have been responsible for specific tasks in the past:</p>
|
||||
<tr>
|
||||
<td> </td>
|
||||
<td>Release Manager</td>
|
||||
<td>Set a date by which all CVS commits must be done, after which
|
||||
commits should only be to fix problems that show up during Final
|
||||
Testing.</td>
|
||||
<td>Set the Feature Freeze date, by which time all CVS commits for
|
||||
enhancements and new functionality should have been completed. After
|
||||
this date, commits should only be made to fix problems that show up
|
||||
during testing.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
<td>Release Manager</td>
|
||||
<td>Release Manager &<br />
|
||||
all developers</td>
|
||||
<td>Ensure that documentation will be updated before the release date:
|
||||
<ul>
|
||||
<li>Application Developers Guide</li>
|
||||
@@ -72,25 +87,84 @@ have been responsible for specific tasks in the past:</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
<td>?</td>
|
||||
<td>...</td>
|
||||
<th colspan="3">Creating pre-release and Release Candidate versions</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<th colspan="3">Final testing</th>
|
||||
<td> </td>
|
||||
<td>Janet Anderson</td>
|
||||
<td>Edit and commit changes to the EPICS version number file
|
||||
configure/CONFIG_BASE_VERSION.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
<td>Janet Anderson</td>
|
||||
<td>Tag the module in CVS. Pre-release version tags take the form
|
||||
<tt>R<i>x</i>-<i>y</i>-<i>z</i>-pre<i>n</i></tt> while Release
|
||||
Candidate tags take the form
|
||||
<tt>R<i>x</i>-<i>y</i>-<i>z</i>-RC<i>m</i></tt>.
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
<td>Janet Anderson</td>
|
||||
<td>Export the tagged version and create a tarfile of the result:
|
||||
<blockquote><tt>
|
||||
cvs export -kv -d base-x.y.z-pre1 -r Rx-y-z-pre1 epics/base<br />
|
||||
tar cfz baseRx.y.z-pre1.tar.gz base-x.y.z-pre1
|
||||
</tt></blockquote></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
<td>Janet Anderson</td>
|
||||
<td>Test the tar file by extracting its contents and building it on at
|
||||
least one supported platform</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
<td>Janet Anderson</td>
|
||||
<td>Copy the tar file to the Base download area of the website</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
<td>Andrew Johnson</td>
|
||||
<td>Create or update a website subdirectory to hold the release
|
||||
documentation, and copy in the files from the base/documentation
|
||||
directory of the tarfile.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
<td>Andrew Johnson</td>
|
||||
<td>Create or modify the webpage for the new release with links to the
|
||||
release documents and tar file. Pre-release versions should use the
|
||||
page and URL for the final release version number.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
<td>Andrew Johnson</td>
|
||||
<td>Add the new pre-release tar file to the website Base download index
|
||||
page.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th colspan="3">Testing</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
<td>Platform Developers</td>
|
||||
<td>Run the Soft IOC tests in mrkSoftTest on all available
|
||||
<td>Run the Soft IOC tests from mrkSoftTest on all available
|
||||
platforms.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
<td>Platform Developers</td>
|
||||
<td>Check that all makeBaseApp templates build and run properly, all
|
||||
xxxApp and xxxBoot types and any internal options, e.g. standalone
|
||||
sncExample appliction, STATIC_BUILD=YES.</td>
|
||||
xxxApp and xxxBoot types and any internal options, e.g. setting
|
||||
STATIC_BUILD=YES in the configure/CONFIG_SITE.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
<td>Platform Developers</td>
|
||||
<td>Build the SNL Sequencer against this version of Base, and check that
|
||||
the makeBaseApp example builds and runs correctly with it.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
@@ -107,7 +181,7 @@ have been responsible for specific tasks in the past:</p>
|
||||
<tr>
|
||||
<td> </td>
|
||||
<td>Release Manager</td>
|
||||
<td>Check that the documentation has been updated:
|
||||
<td>Check that documentation has been updated:
|
||||
<ul>
|
||||
<li>Application Developers Guide</li>
|
||||
<li>Release Notes</li>
|
||||
@@ -116,21 +190,18 @@ have been responsible for specific tasks in the past:</p>
|
||||
</ul>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
<td>?</td>
|
||||
<td>...</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th colspan="3">Release Approval</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
<td>Release Manager</td>
|
||||
<td>Obtain a positive 'Ok to release' from all platform developers.</td>
|
||||
<td>Obtain a positive 'Ok to release' from all platform developers when a
|
||||
Release Candidate version has gone a whole week without any issues being
|
||||
reported.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th colspan="3">Make the release</th>
|
||||
<th colspan="3">Creating the final release version</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
@@ -141,15 +212,17 @@ have been responsible for specific tasks in the past:</p>
|
||||
<tr>
|
||||
<td> </td>
|
||||
<td>Janet Anderson</td>
|
||||
<td>Tag the module in CVS. Official base release version tags take the form
|
||||
<code>R</code><i><code>x</code></i><code>-</code><i><code>y</code></i><code>-</code><i><code>z</code></i><code>[-</code><i><code>n</code></i><code>]</code></td>
|
||||
<td>Tag the module in CVS. Official base release version tags take the
|
||||
form <tt>R<i>x</i>-<i>y</i>-<i>z</i>[-<i>n</i>]</tt></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
<td>Janet Anderson</td>
|
||||
<td>Export the tagged version, "cvs export -kv -d base-x.y.z[.n]
|
||||
-r Rx-y-z[-n] epics/base", and create the
|
||||
baseRx.y.z[.n]tar.gz file of the result</td>
|
||||
<td>Export the tagged version and create a tarfile of the result:
|
||||
<blockquote><tt>
|
||||
cvs export -kv -d base-x.y.z -r Rx-y-z epics/base<br />
|
||||
tar cfz baseRx.y.z.tar.gz base-x.y.z
|
||||
</tt></blockquote></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
@@ -165,20 +238,15 @@ have been responsible for specific tasks in the past:</p>
|
||||
<tr>
|
||||
<td> </td>
|
||||
<td>Andrew Johnson</td>
|
||||
<td>Create a new website subdirectory to hold the release
|
||||
<td>Update the website subdirectory that holds the release
|
||||
documentation, and copy in the files from the base/documentation
|
||||
directory of the tarfile</td>
|
||||
directory of the tarfile.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
<td>Andrew Johnson</td>
|
||||
<td>Create a webpage for the new release with links to the release
|
||||
documents and tar file</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
<td>?</td>
|
||||
<td>...</td>
|
||||
<td>Update the webpage for the new release with links to the release
|
||||
documents and tar file.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th colspan="3">Announce it</th>
|
||||
@@ -214,14 +282,9 @@ have been responsible for specific tasks in the past:</p>
|
||||
<tr>
|
||||
<td> </td>
|
||||
<td>Andrew Johnson</td>
|
||||
<td>Add an entry to the website News page, linking to the new
|
||||
<td>Add an entry to the website News page, linking to the new version
|
||||
webpage</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
<td>?</td>
|
||||
<td>...</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</body>
|
||||
|
||||
21
src/Makefile
21
src/Makefile
@@ -1,11 +1,10 @@
|
||||
#*************************************************************************
|
||||
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
|
||||
# Copyright (c) 2006 UChicago Argonne LLC, as Operator of Argonne
|
||||
# National Laboratory.
|
||||
# Copyright (c) 2002 The Regents of the University of California, as
|
||||
# Operator of Los Alamos National Laboratory.
|
||||
# EPICS BASE Versions 3.13.7
|
||||
# and higher are distributed subject to a Software License Agreement found
|
||||
# in file LICENSE that is included with this distribution.
|
||||
# EPICS BASE is distributed subject to a Software License Agreement found
|
||||
# in the file LICENSE that is included with this distribution.
|
||||
#*************************************************************************
|
||||
#
|
||||
# $Id$
|
||||
@@ -14,15 +13,11 @@
|
||||
TOP = ..
|
||||
include $(TOP)/configure/CONFIG
|
||||
|
||||
#
|
||||
# for c++ build add the dirs gdd and cas after ca
|
||||
# (and uncomment the c++ files in src/lbCom/Makefile.Unix)
|
||||
#
|
||||
DIRS += makeBaseApp
|
||||
DIRS += makeBaseExt
|
||||
DIRS += libCom
|
||||
DIRS += toolsComm
|
||||
DIRS += ca
|
||||
DIRS += RTEMS
|
||||
DIRS += libCom/test
|
||||
DIRS += toolsComm
|
||||
DIRS += dbStatic
|
||||
DIRS += registry
|
||||
DIRS += bpt
|
||||
@@ -38,12 +33,12 @@ DIRS += dev
|
||||
DIRS += misc
|
||||
DIRS += iocsh
|
||||
DIRS += vxWorks
|
||||
DIRS += RTEMS
|
||||
DIRS += softIoc
|
||||
DIRS += libCom/test
|
||||
DIRS += gdd
|
||||
DIRS += cas
|
||||
DIRS += makeBaseApp
|
||||
DIRS += excas
|
||||
DIRS += makeBaseExt
|
||||
|
||||
include $(TOP)/configure/RULES_DIRS
|
||||
|
||||
|
||||
@@ -525,9 +525,9 @@ Init (rtems_task_argument ignored)
|
||||
else {
|
||||
char posixTzBuf[40];
|
||||
char *p = posixTzBuf;
|
||||
p += sprintf(p, "%cST %d:%d", tz[0], minWest/60, minWest%60);
|
||||
p += sprintf(p, "%cST%d:%.2d", tz[0], minWest/60, minWest%60);
|
||||
if (toDst != fromDst)
|
||||
p += sprintf(p, " %cDT", tz[0]);
|
||||
p += sprintf(p, "%cDT", tz[0]);
|
||||
epicsEnvSet("TZ", posixTzBuf);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
#*************************************************************************
|
||||
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
|
||||
# Copyright (c) 2006 UChicago Argonne LLC, as Operator of Argonne
|
||||
# National Laboratory.
|
||||
# Copyright (c) 2002 The Regents of the University of California, as
|
||||
# Operator of Los Alamos National Laboratory.
|
||||
# EPICS BASE Versions 3.13.7
|
||||
# and higher are distributed subject to a Software License Agreement found
|
||||
# EPICS BASE is distributed subject to a Software License Agreement found
|
||||
# in file LICENSE that is included with this distribution.
|
||||
#*************************************************************************
|
||||
TOP=../..
|
||||
@@ -32,7 +31,7 @@ asIoc_RCS_WIN32 = asIoc.rc
|
||||
|
||||
PROD_HOST = ascheck
|
||||
ascheck_SRCS = ascheck.c
|
||||
PROD_LIBS = asHost dbStaticHost Com
|
||||
PROD_LIBS = asHost dbStaticHost ca Com
|
||||
|
||||
# For R3.13 compatibility only
|
||||
ifeq ($(strip $(COMPAT_313)),YES)
|
||||
@@ -42,13 +41,9 @@ endif
|
||||
|
||||
include $(TOP)/configure/RULES
|
||||
|
||||
# Extra rule since asLib_lex.c is included in asLib.c
|
||||
# In my opinion, these objects should really be built
|
||||
# independently.
|
||||
asLib.c: asLib_lex.c ../asLibRoutines.c
|
||||
|
||||
$(INSTALL_INC)/asLib.h:../asLib.h
|
||||
# Extra rule since asLib_lex.c is included by asLib.c
|
||||
asLib$(OBJ): asLib_lex.c
|
||||
|
||||
clean::
|
||||
@$(RM) asLib.c asLib_lex.c
|
||||
@$(RM) asLib.c asLib_lex.c
|
||||
|
||||
|
||||
@@ -14,6 +14,8 @@
|
||||
#define INCasLibh
|
||||
|
||||
#include "shareLib.h"
|
||||
#include "ellLib.h"
|
||||
#include "errlog.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
||||
@@ -8,9 +8,8 @@
|
||||
* in file LICENSE that is included with this distribution.
|
||||
\*************************************************************************/
|
||||
%{
|
||||
static int yyerror();
|
||||
static int yyerror(char *);
|
||||
static int yy_start;
|
||||
static int myParse();
|
||||
#include "asLibRoutines.c"
|
||||
static int yyFailed = FALSE;
|
||||
static int line_num=1;
|
||||
@@ -207,8 +206,7 @@ rule_hag_list_name: tokenSTRING
|
||||
|
||||
#include "asLib_lex.c"
|
||||
|
||||
static int yyerror(str)
|
||||
char *str;
|
||||
static int yyerror(char *str)
|
||||
{
|
||||
if (strlen(str)) epicsPrintf("%s\n", str);
|
||||
epicsPrintf("Access Security file error at line %d\n",
|
||||
|
||||
@@ -19,7 +19,6 @@
|
||||
#include "epicsStdioRedirect.h"
|
||||
#include "dbDefs.h"
|
||||
#include "epicsThread.h"
|
||||
#include "ellLib.h"
|
||||
#include "cantProceed.h"
|
||||
#include "epicsMutex.h"
|
||||
#include "epicsPrint.h"
|
||||
@@ -27,8 +26,6 @@
|
||||
#include "freeList.h"
|
||||
#include "macLib.h"
|
||||
#include "postfix.h"
|
||||
#include "errlog.h"
|
||||
#include "ellLib.h"
|
||||
|
||||
static epicsMutexId asLock;
|
||||
#define LOCK epicsMutexMustLock(asLock)
|
||||
@@ -45,9 +42,10 @@ epicsShareDef int asActive = FALSE;
|
||||
static void *freeListPvt = NULL;
|
||||
|
||||
|
||||
#define RPCL_LEN 184
|
||||
#define DEFAULT "DEFAULT"
|
||||
|
||||
/* Defined in asLib.y */
|
||||
static int myParse(ASINPUTFUNCPTR inputfunction);
|
||||
|
||||
/*private routines */
|
||||
static long asAddMemberPvt(ASMEMBERPVT *pasMemberPvt,const char *asgName);
|
||||
@@ -123,8 +121,8 @@ long epicsShareAPI asInitialize(ASINPUTFUNCPTR inputfunction)
|
||||
while(puagname) {
|
||||
pgphentry = gphAdd(pasbasenew->phash,puagname->user,puag);
|
||||
if(!pgphentry) {
|
||||
epicsPrintf("UAG %s duplicate user = %s\n",
|
||||
puag->name, puagname->user);
|
||||
epicsPrintf("Duplicated user '%s' in UAG '%s'\n",
|
||||
puagname->user, puag->name);
|
||||
}
|
||||
puagname = (UAGNAME *)ellNext((ELLNODE *)puagname);
|
||||
}
|
||||
@@ -136,8 +134,8 @@ long epicsShareAPI asInitialize(ASINPUTFUNCPTR inputfunction)
|
||||
while(phagname) {
|
||||
pgphentry = gphAdd(pasbasenew->phash,phagname->host,phag);
|
||||
if(!pgphentry) {
|
||||
epicsPrintf("HAG %s duplicate host = %s\n",
|
||||
phag->name,phagname->host);
|
||||
epicsPrintf("Duplicated host '%s' in HAG '%s'\n",
|
||||
phagname->host, phag->name);
|
||||
}
|
||||
phagname = (HAGNAME *)ellNext((ELLNODE *)phagname);
|
||||
}
|
||||
@@ -239,7 +237,7 @@ long epicsShareAPI asInitFP(FILE *fp,const char *substitutions)
|
||||
errMessage(status,"asInitFP: macCreateHandle error");
|
||||
return(status);
|
||||
}
|
||||
macParseDefns(macHandle,(char *)substitutions,&macPairs);
|
||||
macParseDefns(macHandle,substitutions,&macPairs);
|
||||
if(macPairs ==NULL) {
|
||||
macDeleteHandle(macHandle);
|
||||
macHandle = NULL;
|
||||
@@ -1177,7 +1175,7 @@ static long asHagAddHost(HAG *phag,const char *host)
|
||||
if (!phag) return 0;
|
||||
phagname = asCalloc(1, sizeof(HAGNAME)+strlen(host)+1);
|
||||
phagname->host = (char *)(phagname+1);
|
||||
for (i = 0; i < strlen(phagname->host); i++) {
|
||||
for (i = 0; i < strlen(host); i++) {
|
||||
phagname->host[i] = (char)tolower((int)host[i]);
|
||||
}
|
||||
ellAdd(&phag->list, (ELLNODE *)phagname);
|
||||
|
||||
@@ -21,7 +21,7 @@ static ASINPUTFUNCPTR *my_yyinput;
|
||||
#undef YY_INPUT
|
||||
#define YY_INPUT(b,r,ms) (r=(*my_yyinput)((char *)b,ms))
|
||||
|
||||
static int yyreset()
|
||||
static int yyreset(void)
|
||||
{
|
||||
line_num=1;
|
||||
BEGIN INITIAL;
|
||||
|
||||
@@ -16,7 +16,6 @@
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "dbDefs.h"
|
||||
#include "errlog.h"
|
||||
#include "asLib.h"
|
||||
#include "dbStaticLib.h"
|
||||
|
||||
@@ -40,13 +40,12 @@ CASG::~CASG ()
|
||||
}
|
||||
|
||||
void CASG::destructor (
|
||||
epicsGuard < epicsMutex > & cbGuard,
|
||||
epicsGuard < epicsMutex > & guard )
|
||||
{
|
||||
guard.assertIdenticalMutex ( this->client.mutexRef() );
|
||||
|
||||
if ( this->verify ( guard ) ) {
|
||||
this->reset ( cbGuard, guard );
|
||||
this->reset ( guard );
|
||||
this->client.uninstallCASG ( guard, *this );
|
||||
this->magic = 0;
|
||||
}
|
||||
@@ -65,7 +64,7 @@ bool CASG::verify ( epicsGuard < epicsMutex > & ) const
|
||||
* CASG::block ()
|
||||
*/
|
||||
int CASG::block (
|
||||
epicsGuard < epicsMutex > & cbGuard,
|
||||
epicsGuard < epicsMutex > * pcbGuard,
|
||||
epicsGuard < epicsMutex > & guard,
|
||||
double timeout )
|
||||
{
|
||||
@@ -110,9 +109,15 @@ int CASG::block (
|
||||
break;
|
||||
}
|
||||
|
||||
{
|
||||
if ( pcbGuard ) {
|
||||
epicsGuardRelease < epicsMutex > unguard ( guard );
|
||||
{
|
||||
epicsGuardRelease < epicsMutex > uncbGuard ( *pcbGuard );
|
||||
this->sem.wait ( remaining );
|
||||
}
|
||||
}
|
||||
else {
|
||||
epicsGuardRelease < epicsMutex > unguard ( guard );
|
||||
epicsGuardRelease < epicsMutex > uncbGuard ( cbGuard );
|
||||
this->sem.wait ( remaining );
|
||||
}
|
||||
|
||||
@@ -124,18 +129,17 @@ int CASG::block (
|
||||
delay = cur_time - beg_time;
|
||||
}
|
||||
|
||||
this->reset ( cbGuard, guard );
|
||||
this->reset ( guard );
|
||||
|
||||
return status;
|
||||
}
|
||||
|
||||
void CASG::reset (
|
||||
epicsGuard < epicsMutex > & cbGuard,
|
||||
epicsGuard < epicsMutex > & guard )
|
||||
{
|
||||
guard.assertIdenticalMutex ( this->client.mutexRef() );
|
||||
this->destroyCompletedIO ( guard );
|
||||
this->destroyPendingIO ( cbGuard, guard );
|
||||
this->destroyPendingIO ( guard );
|
||||
}
|
||||
|
||||
// lock must be applied
|
||||
@@ -150,13 +154,11 @@ void CASG::destroyCompletedIO (
|
||||
}
|
||||
|
||||
void CASG::destroyPendingIO (
|
||||
epicsGuard < epicsMutex > & cbGuard,
|
||||
epicsGuard < epicsMutex > & guard )
|
||||
{
|
||||
guard.assertIdenticalMutex ( this->client.mutexRef() );
|
||||
syncGroupNotify * pNotify;
|
||||
while ( ( pNotify = this->ioPendingList.first () ) ) {
|
||||
pNotify->cancel ( cbGuard, guard );
|
||||
while ( syncGroupNotify * pNotify = this->ioPendingList.first () ) {
|
||||
pNotify->cancel ( guard );
|
||||
// cancel must release the guard while
|
||||
// canceling put callbacks so we
|
||||
// must double check list membership
|
||||
@@ -201,7 +203,6 @@ void CASG::show (
|
||||
}
|
||||
|
||||
bool CASG::ioComplete (
|
||||
epicsGuard < epicsMutex > & /* cbGuard */,
|
||||
epicsGuard < epicsMutex > & guard )
|
||||
{
|
||||
guard.assertIdenticalMutex ( this->client.mutexRef() );
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
|
||||
"http://www.w3.org/TR/html4/strict.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
|
||||
<title>EPICS R3.14 Channel Access Reference Manual</title>
|
||||
</head>
|
||||
|
||||
<body lang="en" bgcolor="#FFFFFF">
|
||||
<body lang="en">
|
||||
<hr>
|
||||
|
||||
<h1>EPICS R3.14 Channel Access Reference Manual</h1>
|
||||
@@ -14,32 +14,34 @@
|
||||
Jeffrey O. Hill
|
||||
</address>
|
||||
|
||||
<p><font size="2">Los Alamos National Laboratory<br>
|
||||
SNS Division</font></p>
|
||||
<p><span style="font-size: x-small; font-weight:lighter;">Los Alamos National
|
||||
Laboratory, SNS Division</span></p>
|
||||
<address>
|
||||
Ralph Lange
|
||||
</address>
|
||||
|
||||
<p><font size="2">BESSY</font></p>
|
||||
<p><span style="font-size: x-small; font-weight:lighter;">BESSY</span></p>
|
||||
|
||||
<p><font size="1">Copyright © 2002 The University of Chicago, as Operator of
|
||||
Argonne National Laboratory.<br>
|
||||
<p><span style="font-size: xx-small; font-weight:lighter;">Copyright © 2002
|
||||
The University of Chicago, as Operator of Argonne National Laboratory.<br>
|
||||
Copyright © 2002 The Regents of the University of California, as Operator of
|
||||
Los Alamos National Laboratory.<br>
|
||||
Copyright © 2002 Berliner Elektronenspeicherringgesellschaft für
|
||||
Synchrotronstrahlung.</font></p>
|
||||
Synchrotronstrahlung.</span></p>
|
||||
|
||||
<p><font size="1">EPICS BASE Versions 3.13.7 and higher are distributed
|
||||
subject to a Software License Agreement found in the file LICENSE that is
|
||||
included with this distribution.</font></p>
|
||||
<p><span style="font-size: xx-small; font-weight:lighter;">EPICS BASE
|
||||
Versions 3.13.7 and higher are distributed subject to a Software License
|
||||
Agreement found in the file LICENSE that is included with this
|
||||
distribution.</span></p>
|
||||
|
||||
<p><a href="http://www.w3.org/Amaya/"><img
|
||||
src="http://www.w3.org/Amaya/Icons/w3c-amaya.gif" alt="W3C-Amaya" height="31"
|
||||
width="88"></a> <a href="http://validator.w3.org/check/referer"> <img
|
||||
border="0" src="http://www.w3.org/Icons/valid-html401" alt="Valid HTML 4.01!"
|
||||
width="88"></a> <a href="http://validator.w3.org/check/referer"><img
|
||||
src="http://www.w3.org/Icons/valid-html401" alt="Valid HTML 4.01!"
|
||||
height="31" width="88"></a></p>
|
||||
|
||||
<p><small>Modified on $Date$</small></p>
|
||||
<p><small><span style="font-size: smaller; font-weight:lighter;">Modified on
|
||||
$Date$</span></small></p>
|
||||
<hr>
|
||||
|
||||
<h2>Table of Contents</h2>
|
||||
@@ -830,9 +832,9 @@ CA server employed by iocCore does not implemet this feature</em>.</p>
|
||||
<h4>Ignoring Process Variable Name Resolution Requests From Certain Hosts</h4>
|
||||
|
||||
<p>Name resolution requests originating from any of the IP addresses
|
||||
specified in the EPICS_CAS_IGNORE_ADDR_LIST parameter are not replied to.<em>
|
||||
In R3.14 and previous releases the CA server employed by iocCore does not
|
||||
implemet this feature.</em></p>
|
||||
specified in the EPICS_CAS_IGNORE_ADDR_LIST parameter are not replied
|
||||
to.<em>In R3.14 and previous releases the CA server employed by iocCore does
|
||||
not implemet this feature.</em></p>
|
||||
|
||||
<h4>Client Configuration that also Applies to Servers</h4>
|
||||
|
||||
@@ -2190,7 +2192,7 @@ It is not possible to attach a thread to a non-preemptive CA context created
|
||||
explicitly <em>or implicitly</em> with
|
||||
ca_create_context(ca_disable_preemptive_callback). Once a thread has joined
|
||||
with a CA context it need only make ordinary ca_xxxx() library calls to use
|
||||
the context. </p>
|
||||
the context.</p>
|
||||
|
||||
<p>A CA client library context can be shut down and cleaned up, after
|
||||
destroying any channels or application specific threads that are attached to
|
||||
@@ -2301,15 +2303,30 @@ callbacks will be called preemptively from more than one thread.</p>
|
||||
<h4>Arguments</h4>
|
||||
<dl>
|
||||
<dt><code>SELECT</code></dt>
|
||||
<dd>Specifies if preemptive callback is allowed. If it is allowed your
|
||||
callbacks might be called when the thread that calls this routine is
|
||||
not executing in the CA client library. Programmers who are unfamiliar
|
||||
with mutual exclusion locking in a multi-threaded environment should
|
||||
specify <code>ca_disable_preemptive_callback</code>. If
|
||||
ca_enable_preemptive_callback is specified then CA client background
|
||||
activities, such as connection management, will proceed even if the
|
||||
thread that calls this routine is not executing in the CA client
|
||||
library.</dd>
|
||||
<dd>This argument specifies if preemptive invocation of callback
|
||||
functions is allowed. If so your callback functions might be called
|
||||
when the thread that calls this routine is not executing in the CA
|
||||
client library. There are two implications to consider. </dd>
|
||||
<dd><p>First, if preemptive callback mode is enabled the developer must
|
||||
provide mutual exclusion protection for his data structures. In this
|
||||
mode it's possible for two threads to touch the application's data
|
||||
structures at once: this might be the initializing thread (the thread
|
||||
that called ca_context_create) and also a private thread created by the
|
||||
CA client library for the purpose of receiving network messages and
|
||||
calling callbacks. It might be prudent for developers who are
|
||||
unfamiliar with mutual exclusion locking in a multi-threaded
|
||||
environment to specify <code>ca_disable_preemptive_callback</code>. </p>
|
||||
<p>Second, if preemptive callback mode is enabled the application is no
|
||||
longer burdened with the necessity of periodically polling the CA
|
||||
client library in order that it might take care of its background
|
||||
activities. If <code>ca_enable_preemptive_callback</code> is specified
|
||||
then CA client background activities, such as connection management,
|
||||
will proceed even if the thread that calls this routine is not
|
||||
executing in the CA client library. Furthermore, in preemptive callback
|
||||
mode callbacks might be called with less latency because the library is
|
||||
not required to wait until the initializing thread (the thread that
|
||||
called ca_context_create) is executing within the CA client library.</p>
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
<h4>Returns</h4>
|
||||
|
||||
@@ -364,16 +364,15 @@ int epicsShareAPI ca_create_channel (
|
||||
int epicsShareAPI ca_clear_channel ( chid pChan )
|
||||
{
|
||||
ca_client_context & cac = pChan->getClientCtx ();
|
||||
epicsGuard < epicsMutex > * pCBGuard = cac.pCallbackGuard.get();
|
||||
if ( pCBGuard ) {
|
||||
epicsGuard < epicsMutex > guard ( cac.mutex );
|
||||
cac.destroyChannel ( *pCBGuard, guard, *pChan );
|
||||
epicsGuard < epicsMutex > guard ( cac.mutex );
|
||||
try {
|
||||
pChan->eliminateExcessiveSendBacklog ( guard );
|
||||
}
|
||||
else {
|
||||
epicsGuard < epicsMutex > cbGuard ( cac.cbMutex );
|
||||
epicsGuard < epicsMutex > guard ( cac.mutex );
|
||||
cac.destroyChannel ( cbGuard, guard, *pChan );
|
||||
catch ( cacChannel::notConnected & ) {
|
||||
// intentionally ignored
|
||||
}
|
||||
pChan->destructor ( guard );
|
||||
cac.oldChannelNotifyFreeList.release ( pChan );
|
||||
return ECA_NORMAL;
|
||||
}
|
||||
|
||||
|
||||
@@ -2545,7 +2545,7 @@ void verifyImmediateTearDown ( const char * pName,
|
||||
enum ca_preemptive_callback_select select,
|
||||
unsigned interestLevel )
|
||||
{
|
||||
unsigned i;
|
||||
int i;
|
||||
|
||||
showProgressBegin ( "verifyImmediateTearDown", interestLevel );
|
||||
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user