-
Notifications
You must be signed in to change notification settings - Fork 4
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Examples only work for last target built #32
Comments
In an iocBoot/ioc/Makefile the |
Sorry, s/iocBoot/$(EPICS_HOST_ARCH)/ for those reading the email version of the previous comment. |
Dave, I'll try to take a closer look at your suggestion and comment further after I've finished publishing the Base-3.16.0.1 release tomorrow. |
Pointer to the LaunchPad bug where the issue is being covered (hopefully, eventually) in EPICS Base: You may want to cherry-pick from there, or (as a temporary workaround) add a compile line "-D" definition and a few lines to the IOC's main() routine that puts the macro into the EPICS_TARGET_ARCH environment variable. |
If I build a copy of pvaSrv then directories in testTop/iocBoot and exampleTop/iocBoot will contain a file envPaths with environmental variables needed to run the test/examples in these directories.
If I build for two targets, say Linux then Windows, the envPaths from the first build will be overwritten by the one from the second and the examples won't work for the first target.
So if I set
SUPPORT=/dls_sw/prod/R3.14.12.3/support
in RELEASE.linux-x86_64[.*]
and
SUPPORT=W:/prod/R3.14.12.3/support
in RELEASE.windows-64[.*] then the line
epicsEnvSet("PVASRV","/dls_sw/prod/R3.14.12.3/support/pvaSrv/0-10-5/testTop/..")
will be overwritten by
epicsEnvSet("PVASRV","W:/prod/R3.14.12.3/support/pvaSrv/0-10-5/testTop/..")
At Diamond all production software is run from a production area which we only have read-access which we release to through scripts. Therefore if I tag the release and then run scripts (which do a "make") for Linux and then Windows, only the Windows example will work. I can't resolve this after the running the scripts as I don't have write access. This is what happened when I released the 4.4.0 modules.
It would be nice if the examples in our production area actually worked. So I'd like a fix to go into pvaSrv so that the examples all run.
Given we want to deploy 4.5.0.1 I'd also like to apply the patch to the 4.5.0.1.
As we want to start deploying 4.5.0.1 this shutdown (starting March 11) I could do with a fix in the next working day or 2.
I tried coming up with a fix. The following change worked, except that it amake clean in testTop doesn't remove the envPaths.*:
How is this as a fix? Is $(EPICS_HOST_ARCH) the right choice or would a different variable be better. Is there a way of cleaning the envPaths.*s.
I'm sure there are EPICS build experts who can suggest a better fix though.
The text was updated successfully, but these errors were encountered: