EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  <20192020  2021  2022  2023  2024  Index 2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  <20192020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: [Merge] ~info-martin-konrad/epics-base:simplify-compiler-specific-macros into epics-base:7.0
From: Martin Konrad via Core-talk <[email protected]>
To: [email protected], Andrew Johnson <[email protected]>, mdavidsaver <[email protected]>
Date: Wed, 13 Nov 2019 19:29:23 -0000
Martin Konrad has proposed merging ~info-martin-konrad/epics-base:simplify-compiler-specific-macros into epics-base:7.0.

Requested reviews:
  Andrew Johnson (anj)
  mdavidsaver (mdavidsaver)

For more details, see:
https://code.launchpad.net/~info-martin-konrad/epics-base/+git/epics-base/+merge/375510

No impact on users. Let's merge this into 7.0 only (see https://code.launchpad.net/~info-martin-konrad/epics-base/+git/epics-base/+merge/375451/comments/983673).
-- 
Your team EPICS Core Developers is subscribed to branch epics-base:7.0.
diff --git a/documentation/RecordReference.md b/documentation/RecordReference.md
new file mode 100644
index 0000000..941d6d9
--- /dev/null
+++ b/documentation/RecordReference.md
@@ -0,0 +1,48 @@
+# Record Reference Documentation
+
+The following documentation for the record types and menus include with Base was converted from the old EPICS Wiki pages and updated. This list does not include all of the available record types as some have not been documented yet.
+
+## Record Types
+
+* [Analog Input Record (ai)](aiRecord.html)
+* [Analog Output Record (ao)](aoRecord.html)
+* [Array Subroutine Record (aSub)](aSubRecord.html)
+* [Binary Input Record (bi)](biRecord.html)
+* [Binary Output Record (bo)](boRecord.html)
+* [Calculation Output Record (calcout)](calcoutRecord.html)
+* [Calculation Record (calc)](calcRecord.html)
+* [Compression Record (compress)](compressRecord.html)
+* [Data Fanout Record (dfanout)](dfanoutRecord.html)
+* [Event Record (event)](eventRecord.html)
+* [Fanout Record (fanout)](fanoutRecord.html)
+* [Long Input Record (longin)](longinRecord.html)
+* [Long Output Record (longout)](longoutRecord.html)
+* [Multi-Bit Binary Input Direct Record (mbbiDirect)](mbbiDirectRecord.html)
+* [Multi-Bit Binary Input Record (mbbi)](mbbiRecord.html)
+* [Multi-Bit Binary Output Direct Record (mbboDirect)](mbboDirectRecord.html)
+* [Multi-Bit Binary Output Record (mbbo)](mbboRecord.html)
+* [Permissive Record (permissive)](permissiveRecord.html)
+* [Select Record (sel)](selRecord.html)
+* [Sequence Record (seq)](seqRecord.html)
+* [State Record (state)](stateRecord.html)
+* [String Input Record (stringin)](stringinRecord.html)
+* [String Output Record (stringout)](stringoutRecord.html)
+* [Sub-Array Record (subArray)](subArrayRecord.html)
+* [Subroutine Record (sub)](subRecord.html)
+* [Waveform Record (waveform)](waveformRecord.html)
+
+## Menu Definitions
+
+* [Alarm Severity Menu](menuAlarmSevr.html)
+* [Alarm Status Menu](menuAlarmStat.html)
+* [Analog Conversions Menu](menuConvert.html)
+* [Field Type Menu](menuFtype.html)
+* [Invalid Value Output Action Menu](menuIvoa.html)
+* [Output Mode Select Menu](menuOmsl.html)
+* [Scan Menu](menuScan.html)
+* [Simulation Mode Menu](menuSimm.html)
+* [Yes/No Menu](menuYesNo.html)
+
+## Corrections and Updates
+
+Corrections to these documents can be submitted as patch files to the EPICS core developers, or as merge requests or pull requests to the 3.15 branch of epics-base. The document sources can be found in the `src/std/rec` and `src/ioc/db` directories in files with extension `.dbd.pod`. The documentation format is an extended version of Perl POD, run `perldoc pod` for details.
diff --git a/src/libCom/osi/compiler/gcc/compilerSpecific.h b/src/libCom/osi/compiler/gcc/compilerSpecific.h
new file mode 100644
index 0000000..136ca69
--- /dev/null
+++ b/src/libCom/osi/compiler/gcc/compilerSpecific.h
@@ -0,0 +1,65 @@
+<<<<<<< src/libCom/osi/compiler/gcc/compilerSpecific.h
+=======
+/*************************************************************************\
+* Copyright (c) 2008 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. 
+\*************************************************************************/
+
+/*
+ * Author: 
+ * Jeffrey O. Hill
+ * [email protected]
+ */
+
+#ifndef compilerSpecific_h
+#define compilerSpecific_h
+
+#ifndef __GNUC__
+#   error compiler/gcc/compilerSpecific.h is only for use with the gnu compiler
+#endif
+
+#ifdef __clang__
+#   error compiler/gcc/compilerSpecific.h is not for use with the clang compiler
+#endif
+
+#define EPICS_ALWAYS_INLINE __inline__ __attribute__((always_inline))
+ 
+#ifdef __cplusplus
+
+/*
+ * in general we dont like ifdefs but they do allow us to check the
+ * compiler version and make the optimistic assumption that 
+ * standards incompliance issues will be fixed by future compiler 
+ * releases
+ */
+
+/*
+ * CXX_PLACEMENT_DELETE - defined if compiler supports placement delete
+ * CXX_THROW_SPECIFICATION - defined if compiler supports throw specification
+ */
+#define CXX_THROW_SPECIFICATION
+#define CXX_PLACEMENT_DELETE
+
+#endif /* __cplusplus */
+
+/*
+ * Enable format-string checking if possible
+ */
+#define EPICS_PRINTF_STYLE(f,a) __attribute__((format(__printf__,f,a)))
+
+/*
+ * Deprecation marker
+ */
+#define EPICS_DEPRECATED __attribute__((deprecated))
+
+/*
+ * Unused marker
+ */
+#define EPICS_UNUSED __attribute__((unused))
+
+#endif  /* ifndef compilerSpecific_h */
+>>>>>>> src/libCom/osi/compiler/gcc/compilerSpecific.h
diff --git a/src/libCom/osi/compiler/msvc/compilerSpecific.h b/src/libCom/osi/compiler/msvc/compilerSpecific.h
new file mode 100644
index 0000000..33aefff
--- /dev/null
+++ b/src/libCom/osi/compiler/msvc/compilerSpecific.h
@@ -0,0 +1,47 @@
+<<<<<<< src/libCom/osi/compiler/msvc/compilerSpecific.h
+=======
+/*************************************************************************\
+* Copyright (c) 2008 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. 
+\*************************************************************************/
+
+/*
+ * Author: 
+ * Jeffrey O. Hill
+ * [email protected]
+ */
+
+#ifndef compilerSpecific_h
+#define compilerSpecific_h
+ 
+#ifndef _MSC_VER
+#   error compiler/msvc/compilerSpecific.h is only for use with the Microsoft compiler
+#endif
+
+#define EPICS_ALWAYS_INLINE __forceinline
+
+#ifdef __cplusplus
+
+/*
+ * in general we dont like ifdefs but they do allow us to check the
+ * compiler version and make the optimistic assumption that 
+ * standards incompliance issues will be fixed by future compiler 
+ * releases
+ */
+ 
+/*
+ * CXX_PLACEMENT_DELETE - defined if compiler supports placement delete
+ * CXX_THROW_SPECIFICATION - defined if compiler supports throw specification
+ */
+#define CXX_PLACEMENT_DELETE
+#define CXX_THROW_SPECIFICATION
+
+#endif /* __cplusplus */
+
+
+#endif  /* ifndef compilerSpecific_h */
+>>>>>>> src/libCom/osi/compiler/msvc/compilerSpecific.h
diff --git a/src/tools/convertRelease.pl b/src/tools/convertRelease.pl
index 2533784..9ccb6f5 100644
--- a/src/tools/convertRelease.pl
+++ b/src/tools/convertRelease.pl
@@ -259,24 +259,26 @@ sub checkRelease {
     my $latest = AbsPath($macros{$app});
     my %paths = ($latest => $app);
     foreach $app (@modules) {
-        my $path = AbsPath($macros{$app});
+        my $val = $macros{$app};
+        next if $val eq '';
+        my $path = AbsPath($val);
         if ($path ne $latest && exists $paths{$path}) {
             my $prev = $paths{$path};
             print "\n" unless ($status);
             print "This application's RELEASE file(s) define\n";
-            print "\t$app = $macros{$app}\n";
-            print "after but not adjacent to\n\t$prev = $macros{$prev}\n";
+            print "\t$app = $val\n";
+            print "and\n\t$prev = $macros{$prev}\n";
             print "both of which resolve to $path\n"
-                if $path ne $macros{$app} || $path ne $macros{$prev};
+                if $path ne $val || $path ne $macros{$prev};
             $status = 2;
         }
         $paths{$path} = $app;
         $latest = $path;
     }
     if ($status == 2) {
-        print "Module definitions that share paths must be grouped together.\n";
-        print "Either remove a definition, or move it to a line immediately\n";
-        print "above or below the other(s).\n";
+        print "Module definitions that share the same path must have their\n";
+        print "first definitions grouped together. Either remove a module,\n";
+        print "or arrange them so all those with that path are adjacent.\n";
         print "Any non-module definitions belong in configure/CONFIG_SITE.\n";
         $status = 1;
     }

Replies:
Re: [Merge] ~info-martin-konrad/epics-base:simplify-compiler-specific-macros into epics-base:7.0 Andrew Johnson via Core-talk
Re: [Merge] ~info-martin-konrad/epics-base:simplify-compiler-specific-macros into epics-base:7.0 Martin Konrad via Core-talk
Re: [Merge] ~info-martin-konrad/epics-base:simplify-compiler-specific-macros into epics-base:7.0 Andrew Johnson via Core-talk
Re: [Merge] ~info-martin-konrad/epics-base:simplify-compiler-specific-macros into epics-base:7.0 mdavidsaver via Core-talk
[Merge] ~info-martin-konrad/epics-base:simplify-compiler-specific-macros into epics-base:7.0 mdavidsaver via Core-talk

Navigate by Date:
Prev: [Merge] ~info-martin-konrad/epics-base:simplify-compiler-specific-macros into epics-base:3.15 Martin Konrad via Core-talk
Next: Re: [Merge] ~info-martin-konrad/epics-base:simplify-compiler-specific-macros into epics-base:7.0 Andrew Johnson via Core-talk
Index: 2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  <20192020  2021  2022  2023  2024 
Navigate by Thread:
Prev: [Merge] ~info-martin-konrad/epics-base:fix-log-issues into epics-base:3.15 Martin Konrad via Core-talk
Next: Re: [Merge] ~info-martin-konrad/epics-base:simplify-compiler-specific-macros into epics-base:7.0 Andrew Johnson via Core-talk
Index: 2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  <20192020  2021  2022  2023  2024 
ANJ, 17 Nov 2019 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·