Closed MarkRivers closed 4 years ago
I will test my suggestions and make a pull request.
I have made the folloiwing changes to assemble_synApps.sh
cp EXAMPLE_RELEASE_SUPPORT.local RELEASE_SUPPORT.local
cp EXAMPLE_RELEASE_BASE.local RELEASE_BASE.local
echo "SUPPORT=$SUPPORT" >> RELEASE_SUPPORT.local echo "EPICS_BASE=$EPICS_BASE" >> RELEASE_BASE.local
areaDetector master no longer uses RELEASE_SUPPORT.local or RELEASE_BASE.local. Those were used to be able to override the definitions of SUPPORT and EPICS_BASE when building on Windows and Linux in the same tree. That is now handled by using the standard
-include $(TOP)/../RELEASE.$(EPICS_HOST_ARCH).local
areaDetector master configure/RELEASE now includes RELEASE_PRODS.local rather than RELEASE_LIBS.local. This ensures that the areaDetector dependencies are correct in the top-level support/Makefile without needing to modify that file in assemble_synApps.sh.
With areaDetector-master, asyn R4-37 and this new version of assemble_synApps.sh "make" correctly builds synApps including areaDetector with ADSimDetector.
Fixed as of 3d43203
I helped Pete Jemian track down problems building a Docker container that used assemble_synApps.sh to download and build synApps. It took quite a while to figure out the problem, which was with the way that assemble_synApps.sh handles areaDetector. Here are some comments:
Creating all of the architecture-specific files is what took a long time to track down. These settings are really not architecture-specific, they are global because of the version of EPICS base you are using. This change should be done by using "sed" on CONFIG_SITE.local.
I don't understand that comment or the need to disable building IOCs. This was the most puzzling thing with Pete, why the IOCs were not being built until we discovered that assemble_synApps.sh was creating these files that are not in the distribution. I build the IOCs for all of these architectures when I build areaDetector. Please tell me what errors you are getting when you build the IOCs. Again if you don't want to build the IOCs this should be done with sed in CONFIG_SITE.local not in architecture specific files.
These lines are not necessary. Just add this line because those settings are already in the example file:
Rather than blowing away the distributed RELEASE.local use sed to uncomment that one line.