Commit Graph

231 Commits

Author SHA1 Message Date
Ralph Lange
4b9958304d tools: add assembleSnippets.pl and test 2015-10-09 11:25:45 +02:00
Andrew Johnson
c5130468cd Let dbdToHtml work with wrong newlines 2015-07-24 10:42:09 -05:00
Andrew Johnson
76205e5c58 Add podRemove.pl script
Use this to generate .dbd files from .dbd.pod files
so installed *Record.dbd files don't have the
dbdCommon.dbd file expanded out.

Fixes lp:1417428
2015-04-13 10:36:13 -05:00
Andrew Johnson
99f1dbb75e Merged changes from 3.14 branch up to revno 12570 2015-03-11 16:26:15 -05:00
Andrew Johnson
de298da94c Fix Jenkins instability on Windows 2015-03-11 10:53:37 -05:00
Andrew Johnson
1cacb8ef72 Make TOP an absolute path when running test programs
If the test starts an IOC, the registerRecordDeviceDriver
routine will compare the absolute path of TOP at build time
against the environment variable value (normally relative)
and print a warning if they differ.
This change cleans up the .tap output from such tests.
2015-03-10 13:04:15 -05:00
Andrew Johnson
02a105e5ab Merged changes from 3.14 branch up to revno 12540 2015-03-02 11:43:20 -06:00
Andrew Johnson
26ab431c0a Back-ported the tapfiles build target from 3.15
This is the version that works on Windows.
2015-02-13 11:16:24 -06:00
Andrew Johnson
fb960e5fc4 Fix "make tapfiles" on Windows 2015-02-04 11:04:40 -06:00
Andrew Johnson
01c0275876 Build stability fixes
Change menuGlobal.dbd and stdRecords.dbd to be generated
as a list of unexpanded include statements, not expanded
out as they have been recently on this branch. This means
any .dbd.pod files in those lists don't have to have been
filtered to remove the POD statements which significantly
simplifies the dependency graph. I had experienced build
loops at times, which this change should prevent.
2014-11-18 14:01:46 -06:00
Andrew Johnson
6f7fc7bf8e Merged changes from 3.14 branch
Up to revno 12504.
2014-11-07 15:57:13 -06:00
Andrew Johnson
c5740c0dd0 Add relPaths.sh target to convertRelease.pl
This is a /bin/sh syntax version of the dllPath.bat file,
needed to run IOCs under Cygwin when SHARED_LIBRARIES=YES.
2014-10-08 14:18:08 -05:00
Andrew Johnson
3d6fba6802 dbdToHtml fix to support Perl 5.8 2014-10-06 13:26:37 -05:00
Andrew Johnson
2ce5d61c38 Perl script fixes.
This commit should fix the Cygwin build issue, and the
stylesheet link problems.
2014-10-03 18:06:47 -05:00
Andrew Johnson
a4298bec56 Merged dbd2html branch 2014-10-03 14:23:04 -05:00
Andrew Johnson
ec7b0d5737 Merged the loadable-support branch 2014-10-02 16:53:15 -05:00
Andrew Johnson
60459effaa Merged the gen-pkg-config branch 2014-09-26 10:13:01 -05:00
Andrew Johnson
c078a9cef8 Replaced split with a single regex 2014-09-25 16:24:23 -05:00
Michael Davidsaver
3fe84c5ace src/tools: export additional variables to pkg-config
No need for new names/capitalization
2014-09-25 16:49:40 -04:00
Michael Davidsaver
5e9b225a2e src/tools: ensure epics-base.pc is generated only for EPICS_HOST_ARCH 2014-09-25 14:04:10 -04:00
Michael Davidsaver
2f577c136c expandVars.pl: correctly handle macro values containing '='. 2014-09-25 13:24:41 -04:00
Andrew Johnson
82f24149d9 Improve error handling of dbdExpand.pl 2014-09-23 15:11:40 -05:00
Andrew Johnson
5bee899f25 Merged Janet's dbdcat branch 2014-09-22 16:12:57 -05:00
Andrew Johnson
92f5e5775d Restructured patch.
* Move the construction of the .pc files into src/tools
* Make more use of the built-in rules for variable substitution
* Make PKGCONFIG an Makefile variable for installing .pc files
* Use EPICS_PATCH_LEVEL for the final digit in the version number
2014-09-19 16:37:56 -05:00
Janet Anderson
840669563c Updated concatenated database definition files 2014-09-11 15:18:57 -05:00
Janet Anderson
09e2926c7b Added concatenated database definition files 2014-09-09 13:29:16 -05:00
Ralph Lange
1bb4293967 src/tools: Set right margin to 0 in style sheet used for html docs created from pod 2014-08-28 15:42:46 -07:00
Andrew Johnson
267ed50dc7 Allow unknown field attributes in record.dbd files
They will be noisy, but are retained in regenerated output and
won't stop the build from proceeding.
2014-08-28 14:12:28 -07:00
Andrew Johnson
4b1fd8cba0 Modify registerRecordDeviceDriver for loadable support
Don't generate code to register record types that have only
been declared, i.e. that have no fields defined in them.
This allows libraries to created which only contain device
support without the record types that they support. The
library must have a DBD file that may declare the record
types (to avoid generating a warning) and also contains any
other device(), variable(), function() and registrar()
entries for software included in the library.

Adds -l flag to the registerRecordDeviceDriver program,
which results in epicsExportSharedSymbols being defined
and shareLib.h being reloaded so the generated output file
can be linked into the library that it is registering.
This aspect has not been tested on Windows DLLs yet.
2014-07-28 00:18:37 -05:00
Andrew Johnson
163cf7971d Errors from the DBD Parser should stop dbdExpand
Such errors used to be just warnings, now they stop the output
file being generated unless the -D flag was given.
2014-07-28 00:16:16 -05:00
Andrew Johnson
a2d511b6e9 DBD parser accepts record type declarations
Record types are the only DBD entries for which the parser
will not accept redefinitions. This change lets it accept
a record type declaration any number of times. However once
a record type declaration has been parsed the full record
type definition cannot be loaded, an error will be raised
if the full definition is seen. The parser will still not
accept a full record type definition more than once either,
any later copies of the record type must be declarations.
2014-07-27 23:55:47 -05:00
Andrew Johnson
8eed4cdd88 Perl DBD Parser: Autovivify record types in device() entries
If a record type named in a device() entry does not exist when
the device is seen, the DBD parser will now print a warning
and create an empty record type with that name to hold the
device entry information.
This will allow support modules to be built into libraries that
include their own registerRecordDeviceDriver code, which was
apparently possible with 3.14 although not officially supported.
To avoid the warning message, the DBD file can declare each
record type before the device statement that uses it.

A record type declaration looks like this:
    recordtype(ao) {}
    device(ao, ....)
An IOC will accept and ignore a record type declaration, but it
must have loaded the full record type definition first.
2014-07-27 23:37:58 -05:00
Andrew Johnson
3c91c17369 Changes for newer version of Pod::Simple::HTML 2014-06-23 22:14:35 -06:00
Ralph Lange
271e1811e3 ioc/dbStatic: make offset in field description an unsigned short, add cast to code generator
fixes ~2600 compiler warnings (on windows-x64)
2014-05-22 16:18:02 +02:00
Andrew Johnson
0a2020e2fc Merged changes from 3.14 branch
Up to 3.14.12.4 release.
2013-12-17 12:54:04 -06:00
Michael Davidsaver
034388f009 recognize and store field attribute "prop()" 2013-11-04 13:39:16 -05:00
Andrew Johnson
91ef05b5dc tools: Improve dbdExpand.pl error/warning message
Missing files used to result in an empty output file.
Now it warns instead of dying, and suggests adding a
dependency to the Makefile.
2013-10-14 12:43:26 -05:00
Andrew Johnson
38037f0873 Use Pod::Simple::XHTML if available. 2013-09-30 17:44:45 -05:00
Andrew Johnson
8a28858ada Merged changes from 3.14 branch. 2013-07-10 16:18:18 -05:00
Andrew Johnson
75a5f19d2e IOCS_APPL_TOP must be absolute path
Fix a recently introduced problem where cdCommands and envParams
had TOP as a relative path (which actually worked by chance).
Also fixed a problem with convertRelease hanging when the -t
argument matched the absolute path to TOP.
2013-07-10 14:13:31 -05:00
Andrew Johnson
9d9f345278 configure: Removed generation of xxxInclude.dbd files
Rules now expand the source DBD files directly in to the target.
Also removed the makeIncludeDbd.pl script which is no longer needed.
2013-06-18 10:01:37 -05:00
Andrew Johnson
2be5e15346 Merged changes from 3.14 branch
Up to revno 12420 inclusive.
2013-06-07 18:08:38 -05:00
Andrew Johnson
5ac686fafd tools: Munch support for module destructors
Added in VxWorks 6.9
2013-04-25 17:00:36 -05:00
Andrew Johnson
97c6d1a903 Add podToHtml.pl script
New rules to use this for .pod and .pm conversions
Replace use of pod2html in ca/client/perl
2013-04-05 13:13:52 -05:00
Andrew Johnson
53c5aaa9ee Introduce the .dbd.pod extension
Rules to convert to .html and .dbd
Rename existing files
Fix various build rules to match.
2013-03-31 00:38:20 -05:00
Andrew Johnson
880d714a0f tools/DBD: Include cdefs in DBD format output. 2013-03-30 23:49:18 -05:00
Andrew Johnson
4f9928bc3c Merged changes from 3.14 branch
Up to revno 12404.
2013-03-15 15:23:55 -05:00
Andrew Johnson
451c4cc854 Unify #! line for Perl scripts
/usr/bin/env exists on all current workstation OSs.
2013-01-23 07:29:07 -06:00
Andrew Johnson
a05f022e44 Reorganize where the POD should be placed
The converter now only handles POD from the root DBD object.
However there are commands that pull POD out of named sub-objects.
This also adds generating tables from menu choices.
2012-10-01 17:38:08 -05:00
Andrew Johnson
f519b63a6f tools/DBD: Don't include =cut lines in the captured POD. 2012-10-01 17:35:23 -05:00