diff --git a/configure/RULES.Db b/configure/RULES.Db index 19b2df211..670aee4c5 100644 --- a/configure/RULES.Db +++ b/configure/RULES.Db @@ -398,12 +398,12 @@ IOC_INST_TOP := $(firstword $(IOCS_APPL_TOP) \ %_registerRecordDeviceDriver.cpp: $(COMMON_DIR)/%.dbd @$(RM) $@ $*.tmp - $(REGISTERRECORDDEVICEDRIVER) $< $(basename $@) $(IOC_INST_TOP) > $*.tmp + $(REGISTERRECORDDEVICEDRIVER) $(DBDFLAGS) $< $(basename $@) $(IOC_INST_TOP) > $*.tmp $(MV) $*.tmp $@ %_registerRecordDeviceDriver.cpp: %.dbd @$(RM) $@ $*.tmp - $(REGISTERRECORDDEVICEDRIVER) $< $(basename $@) $(IOC_INST_TOP) > $*.tmp + $(REGISTERRECORDDEVICEDRIVER) $(DBDFLAGS) $< $(basename $@) $(IOC_INST_TOP) > $*.tmp $(MV) $*.tmp $@ .PRECIOUS: %_registerRecordDeviceDriver.cpp diff --git a/src/ioc/registry/registerRecordDeviceDriver.pl b/src/ioc/registry/registerRecordDeviceDriver.pl index 3adda373a..5ab5c14d3 100755 --- a/src/ioc/registry/registerRecordDeviceDriver.pl +++ b/src/ioc/registry/registerRecordDeviceDriver.pl @@ -18,12 +18,18 @@ use DBD; use DBD::Parser; use EPICS::Readfile; use EPICS::Path; +use EPICS::Getopts; use Text::Wrap; +getopts('I@') or + die "Usage: registerRecordDeviceDriver [-I dir] in.dbd subroutinename [TOP]"; + +my @path = map { split /[:;]/ } @EPICS::Getopts::opt_I; # FIXME: Broken on Win32? + my ($file, $subname, $bldTop) = @ARGV; my $dbd = DBD->new(); -&ParseDBD($dbd, &Readfile($file)); +&ParseDBD($dbd, &Readfile($file, "", \@path)); $Text::Wrap::columns = 75;