* lp-anj7/expanded-rules:
Generate module version files with new RULES_EXPAND facilities
Extend RULES_EXPAND to add more features
More generator doc updates
Document <library>_API = <stem> for Makefiles
Convert epicsShareAPI to epicsStdCall in modules/ca
Update generator script
Modify rules to allow multiple API.h libraries to be built
Convert modules/ca to use LIBCA_API instead of epicsShare
Try out a representative sample of APIs from multiple libraries
Add build rules to generate and install *API.h header files
Add script to generate *API.h headers
Lists the directories with failed tests at the end of the build.
It is no longer necessary to use 'make -k' to see the results
of all tests after one or more failures as only the top-level
test-results recipe will generate a build error.
I split his two "Fields Common to ..." sections back into separate docs,
added links between them all, and made the appropriate build changes.
Also added these and the aai/aao records to the documentation index.
Also improve behavior in case signals are delivered to the sleeping
thread. This fixes a potential security weakness reported by codacy
(interaction of usleep with SIGALRM and other timer functions such
as sleep(), alarm(), setitimer(), and nanosleep() is unspecified).
This fix apply to event record device with constant INP.
Now when the event record is proccessed the associated records with the
same SCAN setup get triggered correctly, it is not more necessary to set
VAL on event record.
Fixes lp: #1829770
Working with Dirk Zimoch @dirk.zimoch, fixed various issues
with bit operations on VS2019 32bit. These seem to relate to
handling bit 31 of a 32 bit number.
As EPICS << is an arithmetic bit shift, following Java we
have added <<< and >>> operators for logical shifts
Though it is on a different architecture, this looks like
a similar issue to LP: #1838792
GNU libstdc++ prior to GCC 6.1.0, the overlay math.h always
includes math.h from glibc, which defines isinf() and friends.
GCC 6.1.0 includes a change (6c8ced3f4f867b72a623fe2f23efa204c5786a28)
so that the overlay math.h never includes the glibc math.h
when compiling c++.
The overlay math.h sometimes includes "using std::isinf"
Determined by inspecting libc math.h when building gcc.