diff --git a/configure/os/CONFIG.Common.linux-x86_64 b/configure/os/CONFIG.Common.linux-x86_64 index e798de23f..8bc88efb3 100644 --- a/configure/os/CONFIG.Common.linux-x86_64 +++ b/configure/os/CONFIG.Common.linux-x86_64 @@ -12,9 +12,11 @@ include $(CONFIG)/os/CONFIG.Common.linuxCommon ARCH_CLASS = x86_64 +ARCH_DEP_CFLAGS = $(GNU_TUNE_CFLAGS) ARCH_DEP_CPPFLAGS += -D_X86_64_ -ARCH_DEP_CFLAGS += -m64 -ARCH_DEP_LDFLAGS += -m64 + +OP_SYS_CFLAGS += -m64 +OP_SYS_LDFLAGS += -m64 # If your crosscompiler name has a GNU target prefix like -gcc, # e.g. x86_64-redhat-linux-gcc, put a GNU_TARGET definition in diff --git a/configure/os/CONFIG_SITE.Common.cygwin-x86_64 b/configure/os/CONFIG_SITE.Common.cygwin-x86_64 index 3950526d1..9b2ccdd3b 100644 --- a/configure/os/CONFIG_SITE.Common.cygwin-x86_64 +++ b/configure/os/CONFIG_SITE.Common.cygwin-x86_64 @@ -12,3 +12,11 @@ # Uncomment the following line if readline has problems #LDLIBS_READLINE = -lreadline -lcurses + +# It makes sense to include debugging symbols even in optimized builds +# in case you want to attach gdb to the process or examine a core-dump. +# This does cost disk space, but not memory as debug symbols are not +# loaded into RAM when the binary is loaded. +OPT_CFLAGS_YES += -g +OPT_CXXFLAGS_YES += -g + diff --git a/configure/os/CONFIG_SITE.Common.linux-x86 b/configure/os/CONFIG_SITE.Common.linux-x86 index 22f43822e..a1d64726c 100644 --- a/configure/os/CONFIG_SITE.Common.linux-x86 +++ b/configure/os/CONFIG_SITE.Common.linux-x86 @@ -12,7 +12,7 @@ # 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_DEPLIB_DIRS and PROD_DEPLIB_DIRS, which +# 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. @@ -33,6 +33,10 @@ COMMANDLINE_LIBRARY = READLINE #COMMANDLINE_LIBRARY = READLINE_CURSES +# Permit access to 64-bit file-systems +OP_SYS_CFLAGS += -D_FILE_OFFSET_BITS=64 + + # Uncomment the followings lines to build with CLANG instead of GCC. # #GNU = NO @@ -49,7 +53,6 @@ OPT_CFLAGS_YES += -g OPT_CXXFLAGS_YES += -g -# Tune GNU compiler output for a specific cpu-type -# (e.g. generic, i386, i486, i586, or i686) +# Tune GNU compiler output for a specific 32-bit cpu-type +# (e.g. generic, native, i386, i686, pentium2/3/4, prescott, k6, athlon etc.) GNU_TUNE_CFLAGS = -mtune=generic - diff --git a/configure/os/CONFIG_SITE.Common.linux-x86_64 b/configure/os/CONFIG_SITE.Common.linux-x86_64 index 482253242..5e31809c0 100644 --- a/configure/os/CONFIG_SITE.Common.linux-x86_64 +++ b/configure/os/CONFIG_SITE.Common.linux-x86_64 @@ -47,3 +47,8 @@ COMMANDLINE_LIBRARY = READLINE # loaded into RAM when the binary is loaded. OPT_CFLAGS_YES += -g OPT_CXXFLAGS_YES += -g + + +# Tune GNU compiler output for a specific 64-bit cpu-type +# (e.g. generic, native, core2, nocona, k8, opteron, athlon64, barcelona etc.) +GNU_TUNE_CFLAGS = -mtune=generic diff --git a/documentation/KnownProblems.html b/documentation/KnownProblems.html index 9f925c02f..ede1424cb 100644 --- a/documentation/KnownProblems.html +++ b/documentation/KnownProblems.html @@ -4,17 +4,17 @@ - Known Problems in R3.15.1 + Known Problems in R3.16.0 -

EPICS Base R3.15.1: Known Problems

+

EPICS Base R3.16.0: Known Problems

Any patch files linked below should be applied at the root of the -base-3.15.1 tree. Download them, then use the GNU Patch program as +base-3.16.0 tree. Download them, then use the GNU Patch program as follows:

-
% cd /path/to/base-3.15.1
+
% cd /path/to/base-3.16.0
 % patch -p0 < /path/to/file.patch

The following significant problems have been reported with this @@ -22,9 +22,10 @@ version of EPICS Base:

    -
  • 64-bit Windows builds of the CAS library may not work with some compilers. - The code in src/legacy/gdd is currently incompatible with the LLP64 - model that Windows uses for its 64-bit ABI.
  • +
diff --git a/documentation/README.1st b/documentation/README.1st index 48c52565b..db5fcf867 100644 --- a/documentation/README.1st +++ b/documentation/README.1st @@ -1,6 +1,6 @@ Installation Instructions - EPICS Base Release 3.15.2 + EPICS Base Release 3.16.0 -------------------------------------------------------------------------- diff --git a/documentation/README.html b/documentation/README.html index 236f8f5f8..08cadff9b 100644 --- a/documentation/README.html +++ b/documentation/README.html @@ -9,7 +9,7 @@

Installation Instructions

-

EPICS Base Release 3.15.2


+

EPICS Base Release 3.16.0



Table of Contents

diff --git a/documentation/ReleaseChecklist.html b/documentation/ReleaseChecklist.html index 49b860f47..dca8aa25a 100644 --- a/documentation/ReleaseChecklist.html +++ b/documentation/ReleaseChecklist.html @@ -60,11 +60,8 @@ responsible for these tasks in the past and are expected to continue in the relevent roles unless the Release Manager designates otherwise:

-
Release Manager (Andrew Johnson)
-
Responsible for the release
-
Configuration Manager (Janet Anderson)
-
Responsible for committing version number updates and for - creating tarfiles
+
Release Manager (Ralph Lange)
+
Responsible for managing and tagging the release
Platform Developers
Responsible for individual operating system platforms
Application Developers
@@ -134,42 +131,42 @@ relevent roles unless the Release Manager designates otherwise:

  - Configuration Manager + Release Manager Edit and commit changes to the EPICS version number file configure/CONFIG_BASE_VERSION.   - Configuration Manager + Release Manager Tag the module in Bazaar, using these tag conventions:
  • - R3.15.1-pren + R3.16.0-pren — pre-release tag
  • - R3.15.1-rcn + R3.16.0-rcn — release candidate tag, note the rc is now lower-case
- cd ~/base/mirror-3.15
- bzr tag R3.15.1-rcn + cd ~/base/mirror-3.16
+ bzr tag R3.16.0-rcn
  - Configuration Manager + Release Manager Export the tagged version into a tarfile. Note that this command generates a gzipped tarfile directly from the repository:
cd ~/base
bzr export --keywords=publish - --root=base-3.15.1-rcn - -r tag:R3.15.1-rcn - baseR3.15.1-rcn.tar.gz - mirror-3.15 + --root=base-3.16.0-rcn + -r tag:R3.16.0-rcn + base-3.16.0-rcn.tar.gz + mirror-3.16
This requires that the Bazaar keywords plugin is installed and configured properly. @@ -177,14 +174,15 @@ relevent roles unless the Release Manager designates otherwise:

  - Configuration Manager + Release Manager Test the tarfile by extracting its contents and building it on at least one supported platform.   - Configuration Manager - Copy the tar file to the Base download area of the website. + Website Manager + If necessary recreate the tarfile following the instructions above. + Copy the tar file to the Base download area of the website   @@ -223,13 +221,6 @@ relevent roles unless the Release Manager designates otherwise:

Run the CA client side regression tests on all available host platforms. - -   - Platform Developers - Build and run the - epics-base-tests - suite on all available platforms. -   Platform Developers @@ -279,32 +270,32 @@ relevent roles unless the Release Manager designates otherwise:

  - Configuration Manager + Release Manager Edit and commit changes to the EPICS version number file configure/CONFIG_BASE_VERSION.   - Configuration Manager + Release Manager Tag the module in Bazaar:
- cd ~/base/mirror-3.15
- bzr tag R3.15.1 + cd ~/base/mirror-3.16
+ bzr tag R3.16.0
  - Configuration Manager + Release Manager Export the tagged version into a tarfile. Note that this command generates a gzipped tarfile directly from the repository:
cd ~/base
bzr export --keywords=publish - --root=base-3.15.1 - -r tag:R3.15.1 - baseR3.15.1.tar.gz - mirror-3.15 + --root=base-3.16.0 + -r tag:R3.16.0 + base-3.16.0.tar.gz + mirror-3.16
This requires that the Bazaar keywords plugin is installed and configured properly. @@ -312,7 +303,7 @@ relevent roles unless the Release Manager designates otherwise:

  - Configuration Manager + Release Manager Test the tar file by extracting its contents and building it on at least one supported platform @@ -321,8 +312,9 @@ relevent roles unless the Release Manager designates otherwise:

  - Configuration Manager - Copy the tar file to the Base download area of the website + Website Manager + If necessary recreate the tarfile following the instructions above. + Copy the tar file to the Base download area of the website   diff --git a/src/ioc/dbStatic/dbStaticLib.c b/src/ioc/dbStatic/dbStaticLib.c index 0047d8722..e1861001a 100644 --- a/src/ioc/dbStatic/dbStaticLib.c +++ b/src/ioc/dbStatic/dbStaticLib.c @@ -49,7 +49,7 @@ int dbStaticDebug = 0; static char *pNullString = ""; -#define messagesize 100 +#define messagesize 276 #define RPCL_LEN INFIX_TO_POSTFIX_SIZE(80) static char *ppstring[5]={"NPP","PP","CA","CP","CPP"}; diff --git a/src/libCom/osi/os/cygwin32/osdSock.h b/src/libCom/osi/os/cygwin32/osdSock.h index 0915cc069..460839a26 100644 --- a/src/libCom/osi/os/cygwin32/osdSock.h +++ b/src/libCom/osi/os/cygwin32/osdSock.h @@ -19,6 +19,7 @@ #include #include /* for MAXHOSTNAMELEN */ #include +#include #include #include #include diff --git a/src/libCom/osi/os/cygwin32/systemCallIntMech.cpp b/src/libCom/osi/os/cygwin32/systemCallIntMech.cpp index 6a5ce4c9f..93da75ea6 100644 --- a/src/libCom/osi/os/cygwin32/systemCallIntMech.cpp +++ b/src/libCom/osi/os/cygwin32/systemCallIntMech.cpp @@ -19,7 +19,7 @@ enum epicsSocketSystemCallInterruptMechanismQueryInfo epicsSocketSystemCallInterruptMechanismQuery () { -#if (CYGWIN_VERSION_DLL_MAJOR >= 1007) && (CYGWIN_VERSION_DLL_MINOR < 15) +#if (CYGWIN_VERSION_DLL_MAJOR == 1007) && (CYGWIN_VERSION_DLL_MINOR < 15) // Behaviour changed in early Cygwin 1.7 releases, reverted later. return esscimqi_socketCloseRequired; #else