Commit Graph

195 Commits

Author SHA1 Message Date
Andrew Johnson
4d3831ce58 Merged changes from 3.15 branch to revno 12699 2015-07-24 12:01:53 -05:00
Andrew Johnson
c5130468cd Let dbdToHtml work with wrong newlines 2015-07-24 10:42:09 -05:00
Andrew Johnson
1e68f3899d Merged gen-vcs-version branch 2015-07-10 14:02:01 -05:00
Michael Davidsaver
8b3d37d392 genVersionHeader: work with git repo w/o tags
--always is necessary for (new) repositories w/o any tags.
--abbrev=20 to get more than the default 7 characters of the hash
2015-07-10 14:19:44 -04:00
Andrew Johnson
837111296e Updates to build rules and genVersionHeader.pl script
Added -q (quiet) flag, renamed INSTALL_QUIETLY build variable.
Moved GENVERSION variables into normal locations.
Changed from :: rule to : rule with FORCE dependency.
Removed use of --git-dir, only works when CWD is TOP.
Simplified some parts, more perlish.
Added VCS used to generated output file.
Expanded on the -v (verbose) output.
2015-07-10 12:09:37 -05:00
Andrew Johnson
60823bd2fb Some edits to the Perl script 2015-07-08 16:46:34 -05:00
Andrew Johnson
f6cdbe2693 tools: Support for DB files, added dbExpand.pl 2015-07-06 11:26:35 -05:00
Michael Davidsaver
1240f09797 genVersionHeader: update HG, add SVN and BZR
Update the HG case to use --cwd to avoid dependence on shell syntax.
2015-06-01 19:19:24 -04:00
Andrew Johnson
e4f336de94 Perl style fixes, document more Perl programs 2015-04-21 15:09:24 -05:00
Andrew Johnson
fa23ba8a6a Merged changes from 3.15 branch up to revno 12670 2015-04-16 18:12:59 -05:00
Andrew Johnson
ee8bf98f94 Generate documentation from Perl modules
Add rules to generate HTML from POD in Perl modules and scripts.
Generate docs from several EPICS/ Perl modules.
2015-04-15 18:01:26 -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
Michael Davidsaver
e24d4637c9 genVersionHeader: use date+time as the default version number 2014-08-29 09:56:32 -07: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
Michael Davidsaver
3f462bd032 check errors 2014-08-27 17:24:44 -07:00
Ralph Lange
6a018dce35 tools: Add support for Darcs to genVersionHeader.pl 2014-08-27 11:06:57 -07:00
Ralph Lange
55cf45364c tools: Make genVersionHeader.pl log more detailed and streamlined with other EPICS build output 2014-08-27 11:03:54 -07:00
Michael Davidsaver
3885c809a6 introduce genVersionHeader.pl 2014-08-22 15:23:51 -04: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