I see. The issue with this change is that IOC engineers need to modify
their Makefile on all their IOCs using StreamDevice when they upgrade
from 2.7 to 2.8. I was trying to avoid that. But it seems like there is
no clean way I can fix that in my package. Unfortunately IOC engineers
will need to modify their Makefiles.
What we do in CODAC Core System to minimize the needed changes in Makefiles:
Every support module installs a Makefile snippet in a central "system" location:
CODAC_DBD += stream.dbd
CODAC_LIBS += stream
In an application that wants to use stream, the Makefile just includes the
stream.mk snippet and eventually sets
myIoc_DBD += $(CODAC_DBD)
myIoc_LIBS += $(CODAC_LIBS)
That way, the actual dbd files and libraries are under system control and can be changed as part of an upgrade without having to change all applications' Makefiles. (I.e., easy and safe migration.)
Cheers,
~Ralph