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