cnpem / epics-in-docker

Container images with EPICS and modules
5 stars 2 forks source link

base: use single job to build ipmiComm. #70

Closed henriquesimoes closed 3 months ago

henriquesimoes commented 4 months ago

Using with multiple processes breaks the build, as inter-dependencies are not properly handled when generating the substituted databases. Use a single process for this specific module, so that local builds of other modules can use multiple jobs without breaking.

henriquesimoes commented 3 months ago

Just for documentation purposes, here's an example of the failing execution:

Build logs ``` make[2]: Entering directory '/opt/epics/modules/ipmiComm/Db/O.linux-x86_64' /usr/bin/gcc -D_GNU_SOURCE -D_DEFAULT_SOURCE -D_X86_64_ -DUNIX -Dlinux -O3 -g -Wall -Werror-implicit-function-declaration -mtune=generic -m64 -fPIC -I. -I../O.Common -I. -I. -I.. -I../../include/compiler/gcc -I../../include/os/Linux -I../../include -I/opt/epics/base/include/compiler/gcc -I/opt/epics/base/include/os/Linux -I/opt/epics/base/include -I/opt/epics/modules/asyn/include -MM -MF subIpmiComm.d ../subIpmiComm.c /usr/bin/gcc -D_GNU_SOURCE -D_DEFAULT_SOURCE -D_X86_64_ -DUNIX -Dlinux -O3 -g -Wall -Werror-implicit-function-declaration -mtune=generic -m64 -fPIC -I. -I../O.Common -I. -I. -I.. -I../../include/compiler/gcc -I../../include/os/Linux -I../../include -I/opt/epics/base/include/compiler/gcc -I/opt/epics/base/include/os/Linux -I/opt/epics/base/include -I/opt/epics/modules/asyn/include -MM -MF drvMchServerPc.d ../drvMchServerPc.c /usr/bin/gcc -D_GNU_SOURCE -D_DEFAULT_SOURCE -D_X86_64_ -DUNIX -Dlinux -O3 -g -Wall -Werror-implicit-function-declaration -mtune=generic -m64 -fPIC -I. -I../O.Common -I. -I. -I.. -I../../include/compiler/gcc -I../../include/os/Linux -I../../include -I/opt/epics/base/include/compiler/gcc -I/opt/epics/base/include/os/Linux -I/opt/epics/base/include -I/opt/epics/modules/asyn/include -MM -MF drvMchPicmg.d ../drvMchPicmg.c /usr/bin/gcc -D_GNU_SOURCE -D_DEFAULT_SOURCE -D_X86_64_ -DUNIX -Dlinux -O3 -g -Wall -Werror-implicit-function-declaration -mtune=generic -m64 -fPIC -I. -I../O.Common -I. -I. -I.. -I../../include/compiler/gcc -I../../include/os/Linux -I../../include -I/opt/epics/base/include/compiler/gcc -I/opt/epics/base/include/os/Linux -I/opt/epics/base/include -I/opt/epics/modules/asyn/include -MM -MF picmgDef.d ../picmgDef.c /usr/bin/gcc -D_GNU_SOURCE -D_DEFAULT_SOURCE -D_X86_64_ -DUNIX -Dlinux -O3 -g -Wall -Werror-implicit-function-declaration -mtune=generic -m64 -fPIC -I. -I../O.Common -I. -I. -I.. -I../../include/compiler/gcc -I../../include/os/Linux -I../../include -I/opt/epics/base/include/compiler/gcc -I/opt/epics/base/include/os/Linux -I/opt/epics/base/include -I/opt/epics/modules/asyn/include -MM -MF ipmiDef.d ../ipmiDef.c /usr/bin/gcc -D_GNU_SOURCE -D_DEFAULT_SOURCE -D_X86_64_ -DUNIX -Dlinux -O3 -g -Wall -Werror-implicit-function-declaration -mtune=generic -m64 -fPIC -I. -I../O.Common -I. -I. -I.. -I../../include/compiler/gcc -I../../include/os/Linux -I../../include -I/opt/epics/base/include/compiler/gcc -I/opt/epics/base/include/os/Linux -I/opt/epics/base/include -I/opt/epics/modules/asyn/include -MM -MF ipmiMsg.d ../ipmiMsg.c /usr/bin/gcc -D_GNU_SOURCE -D_DEFAULT_SOURCE -D_X86_64_ -DUNIX -Dlinux -O3 -g -Wall -Werror-implicit-function-declaration -mtune=generic -m64 -fPIC -I. -I../O.Common -I. -I. -I.. -I../../include/compiler/gcc -I../../include/os/Linux -I../../include -I/opt/epics/base/include/compiler/gcc -I/opt/epics/base/include/os/Linux -I/opt/epics/base/include -I/opt/epics/modules/asyn/include -MM -MF drvMchMsg.d ../drvMchMsg.c "/opt/epics/base/bin/linux-x86_64/msi" -D -I../O.Common -I. -I.. -I../O.Common -I../../db -I/opt/epics/base/db -I/opt/epics/modules/asyn/db -o ../O.Common/shelf_atca_7slot_lcls.db -S../shelf_atca_7slot_lcls.substitutions > shelf_atca_7slot_lcls.db.d "/opt/epics/base/bin/linux-x86_64/msi" -D -I../O.Common -I. -I.. -I../O.Common -I../../db -I/opt/epics/base/db -I/opt/epics/modules/asyn/db -o ../O.Common/fru_atca_rtm_lcls.db -S../fru_atca_rtm_lcls.substitutions > fru_atca_rtm_lcls.db.d "/opt/epics/base/bin/linux-x86_64/msi" -D -I../O.Common -I. -I.. -I../O.Common -I../../db -I/opt/epics/base/db -I/opt/epics/modules/asyn/db -o ../O.Common/fru_atca_fb_lcls.db -S../fru_atca_fb_lcls.substitutions > fru_atca_fb_lcls.db.d "/opt/epics/base/bin/linux-x86_64/msi" -D -I../O.Common -I. -I.. -I../O.Common -I../../db -I/opt/epics/base/db -I/opt/epics/modules/asyn/db -o ../O.Common/server_pc_lcls.db -S../server_pc_lcls.substitutions > server_pc_lcls.db.d msi: Can't open file 'system_common_lcls.db' input: '' at "/opt/epics/base/bin/linux-x86_64/msi" -D -I../O.Common -I. -I.. -I../O.Common -I../../db -I/opt/epics/base/db -I/opt/epics/modules/asyn/db -o ../O.Common/shelf_microtca_12slot_lcls.db -S../shelf_microtca_12slot_lcls.substitutions > shelf_microtca_12slot_lcls.db.d "/opt/epics/base/bin/linux-x86_64/msi" -D -I../O.Common -I. -I.. -I../O.Common -I../../db -I/opt/epics/base/db -I/opt/epics/modules/asyn/db -o ../O.Common/server_pc.db -S../server_pc.substitutions > server_pc.db.d msi: Can't open file 'server_pc.db' input: '' at "/opt/epics/base/bin/linux-x86_64/msi" -D -I../O.Common -I. -I.. -I../O.Common -I../../db -I/opt/epics/base/db -I/opt/epics/modules/asyn/db -o ../O.Common/shelf_atca_7slot.db -S../shelf_atca_7slot.substitutions > shelf_atca_7slot.db.d msi: Can't open file 'shelf_microtca_12slot.db' input: '' at perl -CSD /opt/epics/base/bin/linux-x86_64/convertRelease.pl checkRelease "/opt/epics/base/bin/linux-x86_64/msi" -D -I../O.Common -I. -I.. -I../O.Common -I../../db -I/opt/epics/base/db -I/opt/epics/modules/asyn/db -o ../O.Common/shelf_microtca_12slot.db -S../shelf_microtca_12slot.substitutions > shelf_microtca_12slot.db.d "/opt/epics/base/bin/linux-x86_64/msi" -D -I../O.Common -I. -I.. -I../O.Common -I../../db -I/opt/epics/base/db -I/opt/epics/modules/asyn/db -o ../O.Common/system_common_lcls.db -S../system_common_lcls.substitutions > system_common_lcls.db.d "/opt/epics/base/bin/linux-x86_64/msi" -D -I../O.Common -I. -I.. -I../O.Common -I../../db -I/opt/epics/base/db -I/opt/epics/modules/asyn/db -o ../O.Common/fru_atca_rtm.db -S../fru_atca_rtm.substitutions > fru_atca_rtm.db.d msi: Can't open file 'fru_basic.db' input: '} ' at msi: Can't open file 'fru_basic.db' input: '} ' at "/opt/epics/base/bin/linux-x86_64/msi" -D -I../O.Common -I. -I.. -I../O.Common -I../../db -I/opt/epics/base/db -I/opt/epics/modules/asyn/db -o ../O.Common/fru_atca_fb.db -S../fru_atca_fb.substitutions > fru_atca_fb.db.d "/opt/epics/base/bin/linux-x86_64/msi" -D -I../O.Common -I. -I.. -I../O.Common -I../../db -I/opt/epics/base/db -I/opt/epics/modules/asyn/db -o ../O.Common/fru_cu.db -S../fru_cu.substitutions > fru_cu.db.d "/opt/epics/base/bin/linux-x86_64/msi" -D -I../O.Common -I. -I.. -I../O.Common -I../../db -I/opt/epics/base/db -I/opt/epics/modules/asyn/db -o ../O.Common/fru_pm.db -S../fru_pm.substitutions > fru_pm.db.d "/opt/epics/base/bin/linux-x86_64/msi" -D -I../O.Common -I. -I.. -I../O.Common -I../../db -I/opt/epics/base/db -I/opt/epics/modules/asyn/db -o ../O.Common/fru_extended.db -S../fru_extended.substitutions > fru_extended.db.d msi: Can't open file 'fru_basic.db' input: '}' at make[2]: Leaving directory '/opt/epics/modules/ipmiComm/configure/O.linux-x86_64' make[1]: Leaving directory '/opt/epics/modules/ipmiComm/configure' /usr/bin/gcc -D_GNU_SOURCE -D_DEFAULT_SOURCE -D_X86_64_ -DUNIX -Dlinux -O3 -g -Wall -Werror-implicit-function-declaration -mtune=generic -m64 -fPIC -I. -I../O.Common -I. -I. -I.. -I../../include/compiler/gcc -I../../include/os/Linux -I../../include -I/opt/epics/base/include/compiler/gcc -I/opt/epics/base/include/os/Linux -I/opt/epics/base/include -I/opt/epics/modules/asyn/include -MM -MF devMch.d ../devMch.c /usr/bin/gcc -D_GNU_SOURCE -D_DEFAULT_SOURCE -D_X86_64_ -DUNIX -Dlinux -O3 -g -Wall -Werror-implicit-function-declaration -mtune=generic -m64 -fPIC -I. -I../O.Common -I. -I. -I.. -I../../include/compiler/gcc -I../../include/os/Linux -I../../include -I/opt/epics/base/include/compiler/gcc -I/opt/epics/base/include/os/Linux -I/opt/epics/base/include -I/opt/epics/modules/asyn/include -MM -MF drvMch.d ../drvMch.c "/opt/epics/base/bin/linux-x86_64/msi" -D -I../O.Common -I. -I.. -I../O.Common -I../../db -I/opt/epics/base/db -I/opt/epics/modules/asyn/db -o ../O.Common/fru_basic.db -S../fru_basic.substitutions > fru_basic.db.d Inflating database from ../fru_basic.substitutions Inflating database from ../fru_extended.substitutions Inflating database from ../fru_pm.substitutions "/opt/epics/base/bin/linux-x86_64/msi" -I../O.Common -I. -I.. -I../O.Common -I../../db -I/opt/epics/base/db -I/opt/epics/modules/asyn/db -o fru_basic.db -S../fru_basic.substitutions "/opt/epics/base/bin/linux-x86_64/msi" -I../O.Common -I. -I.. -I../O.Common -I../../db -I/opt/epics/base/db -I/opt/epics/modules/asyn/db -o fru_extended.db -S../fru_extended.substitutions "/opt/epics/base/bin/linux-x86_64/msi" -I../O.Common -I. -I.. -I../O.Common -I../../db -I/opt/epics/base/db -I/opt/epics/modules/asyn/db -o fru_pm.db -S../fru_pm.substitutions Inflating database from ../fru_cu.substitutions Inflating database from ../fru_atca_fb.substitutions Inflating database from ../fru_atca_rtm.substitutions "/opt/epics/base/bin/linux-x86_64/msi" -I../O.Common -I. -I.. -I../O.Common -I../../db -I/opt/epics/base/db -I/opt/epics/modules/asyn/db -o fru_cu.db -S../fru_cu.substitutions "/opt/epics/base/bin/linux-x86_64/msi" -I../O.Common -I. -I.. -I../O.Common -I../../db -I/opt/epics/base/db -I/opt/epics/modules/asyn/db -o fru_atca_fb.db -S../fru_atca_fb.substitutions Inflating database from ../system_common_lcls.substitutions "/opt/epics/base/bin/linux-x86_64/msi" -I../O.Common -I. -I.. -I../O.Common -I../../db -I/opt/epics/base/db -I/opt/epics/modules/asyn/db -o fru_atca_rtm.db -S../fru_atca_rtm.substitutions "/opt/epics/base/bin/linux-x86_64/msi" -I../O.Common -I. -I.. -I../O.Common -I../../db -I/opt/epics/base/db -I/opt/epics/modules/asyn/db -o system_common_lcls.db -S../system_common_lcls.substitutions Inflating database from ../shelf_microtca_12slot.substitutions Inflating database from ../shelf_atca_7slot.substitutions "/opt/epics/base/bin/linux-x86_64/msi" -I../O.Common -I. -I.. -I../O.Common -I../../db -I/opt/epics/base/db -I/opt/epics/modules/asyn/db -o shelf_microtca_12slot.db -S../shelf_microtca_12slot.substitutions "/opt/epics/base/bin/linux-x86_64/msi" -I../O.Common -I. -I.. -I../O.Common -I../../db -I/opt/epics/base/db -I/opt/epics/modules/asyn/db -o shelf_atca_7slot.db -S../shelf_atca_7slot.substitutions Inflating database from ../server_pc.substitutions Inflating database from ../shelf_microtca_12slot_lcls.substitutions "/opt/epics/base/bin/linux-x86_64/msi" -I../O.Common -I. -I.. -I../O.Common -I../../db -I/opt/epics/base/db -I/opt/epics/modules/asyn/db -o server_pc.db -S../server_pc.substitutions Inflating database from ../server_pc_lcls.substitutions "/opt/epics/base/bin/linux-x86_64/msi" -I../O.Common -I. -I.. -I../O.Common -I../../db -I/opt/epics/base/db -I/opt/epics/modules/asyn/db -o shelf_microtca_12slot_lcls.db -S../shelf_microtca_12slot_lcls.substitutions "/opt/epics/base/bin/linux-x86_64/msi" -I../O.Common -I. -I.. -I../O.Common -I../../db -I/opt/epics/base/db -I/opt/epics/modules/asyn/db -o server_pc_lcls.db -S../server_pc_lcls.substitutions Inflating database from ../fru_atca_fb_lcls.substitutions Installing dbd file ../../dbd/ipmiComm.dbd Inflating database from ../fru_atca_rtm_lcls.substitutions "/opt/epics/base/bin/linux-x86_64/msi" -I../O.Common -I. -I.. -I../O.Common -I../../db -I/opt/epics/base/db -I/opt/epics/modules/asyn/db -o fru_atca_fb_lcls.db -S../fru_atca_fb_lcls.substitutions Inflating database from ../shelf_atca_7slot_lcls.substitutions "/opt/epics/base/bin/linux-x86_64/msi" -I../O.Common -I. -I.. -I../O.Common -I../../db -I/opt/epics/base/db -I/opt/epics/modules/asyn/db -o fru_atca_rtm_lcls.db -S../fru_atca_rtm_lcls.substitutions /usr/bin/gcc -D_GNU_SOURCE -D_DEFAULT_SOURCE -D_X86_64_ -DUNIX -Dlinux -O3 -g -Wall -Werror-implicit-function-declaration -mtune=generic -m64 -fPIC -I. -I../O.Common -I. -I. -I.. -I../../include/compiler/gcc -I../../include/os/Linux -I../../include -I/opt/epics/base/include/compiler/gcc -I/opt/epics/base/include/os/Linux -I/opt/epics/base/include -I/opt/epics/modules/asyn/include -c ../drvMch.c "/opt/epics/base/bin/linux-x86_64/msi" -I../O.Common -I. -I.. -I../O.Common -I../../db -I/opt/epics/base/db -I/opt/epics/modules/asyn/db -o shelf_atca_7slot_lcls.db -S../shelf_atca_7slot_lcls.substitutions Installing created db file ../../db/fru_basic.db Installing created db file ../../db/fru_extended.db /usr/bin/gcc -D_GNU_SOURCE -D_DEFAULT_SOURCE -D_X86_64_ -DUNIX -Dlinux -O3 -g -Wall -Werror-implicit-function-declaration -mtune=generic -m64 -fPIC -I. -I../O.Common -I. -I. -I.. -I../../include/compiler/gcc -I../../include/os/Linux -I../../include -I/opt/epics/base/include/compiler/gcc -I/opt/epics/base/include/os/Linux -I/opt/epics/base/include -I/opt/epics/modules/asyn/include -c ../devMch.c /usr/bin/gcc -D_GNU_SOURCE -D_DEFAULT_SOURCE -D_X86_64_ -DUNIX -Dlinux -O3 -g -Wall -Werror-implicit-function-declaration -mtune=generic -m64 -fPIC -I. -I../O.Common -I. -I. -I.. -I../../include/compiler/gcc -I../../include/os/Linux -I../../include -I/opt/epics/base/include/compiler/gcc -I/opt/epics/base/include/os/Linux -I/opt/epics/base/include -I/opt/epics/modules/asyn/include -c ../drvMchMsg.c Installing created db file ../../db/fru_pm.db Installing created db file ../../db/fru_cu.db msi: Can't open file 'fru_atca_fb_lcls.db' input: '} ' at make[2]: *** [/opt/epics/base/configure/RULES.Db:479: ../O.Common/shelf_atca_7slot_lcls.db] Error 1 make[2]: *** Waiting for unfinished jobs.... /usr/bin/gcc -D_GNU_SOURCE -D_DEFAULT_SOURCE -D_X86_64_ -DUNIX -Dlinux -O3 -g -Wall -Werror-implicit-function-declaration -mtune=generic -m64 -fPIC -I. -I../O.Common -I. -I. -I.. -I../../include/compiler/gcc -I../../include/os/Linux -I../../include -I/opt/epics/base/include/compiler/gcc -I/opt/epics/base/include/os/Linux -I/opt/epics/base/include -I/opt/epics/modules/asyn/include -c ../ipmiMsg.c /usr/bin/gcc -D_GNU_SOURCE -D_DEFAULT_SOURCE -D_X86_64_ -DUNIX -Dlinux -O3 -g -Wall -Werror-implicit-function-declaration -mtune=generic -m64 -fPIC -I. -I../O.Common -I. -I. -I.. -I../../include/compiler/gcc -I../../include/os/Linux -I../../include -I/opt/epics/base/include/compiler/gcc -I/opt/epics/base/include/os/Linux -I/opt/epics/base/include -I/opt/epics/modules/asyn/include -c ../ipmiDef.c /usr/bin/gcc -D_GNU_SOURCE -D_DEFAULT_SOURCE -D_X86_64_ -DUNIX -Dlinux -O3 -g -Wall -Werror-implicit-function-declaration -mtune=generic -m64 -fPIC -I. -I../O.Common -I. -I. -I.. -I../../include/compiler/gcc -I../../include/os/Linux -I../../include -I/opt/epics/base/include/compiler/gcc -I/opt/epics/base/include/os/Linux -I/opt/epics/base/include -I/opt/epics/modules/asyn/include -c ../picmgDef.c /usr/bin/gcc -D_GNU_SOURCE -D_DEFAULT_SOURCE -D_X86_64_ -DUNIX -Dlinux -O3 -g -Wall -Werror-implicit-function-declaration -mtune=generic -m64 -fPIC -I. -I../O.Common -I. -I. -I.. -I../../include/compiler/gcc -I../../include/os/Linux -I../../include -I/opt/epics/base/include/compiler/gcc -I/opt/epics/base/include/os/Linux -I/opt/epics/base/include -I/opt/epics/modules/asyn/include -c ../drvMchPicmg.c /usr/bin/gcc -D_GNU_SOURCE -D_DEFAULT_SOURCE -D_X86_64_ -DUNIX -Dlinux -O3 -g -Wall -Werror-implicit-function-declaration -mtune=generic -m64 -fPIC -I. -I../O.Common -I. -I. -I.. -I../../include/compiler/gcc -I../../include/os/Linux -I../../include -I/opt/epics/base/include/compiler/gcc -I/opt/epics/base/include/os/Linux -I/opt/epics/base/include -I/opt/epics/modules/asyn/include -c ../drvMchServerPc.c /usr/bin/gcc -D_GNU_SOURCE -D_DEFAULT_SOURCE -D_X86_64_ -DUNIX -Dlinux -O3 -g -Wall -Werror-implicit-function-declaration -mtune=generic -m64 -fPIC -I. -I../O.Common -I. -I. -I.. -I../../include/compiler/gcc -I../../include/os/Linux -I../../include -I/opt/epics/base/include/compiler/gcc -I/opt/epics/base/include/os/Linux -I/opt/epics/base/include -I/opt/epics/modules/asyn/include -c ../subIpmiComm.c mkdir ../../dbd mkdir ../../db In file included from /opt/epics/base/include/dbAccess.h:20, from ../devMch.c:174: /opt/epics/base/include/dbBase.h:164:5: warning: 'rset' is deprecated [-Wdeprecated-declarations] 164 | rset *prset; | ^~~~ In file included from /opt/epics/base/include/dbBase.h:22, from /opt/epics/base/include/dbAccess.h:20, from ../devMch.c:174: /opt/epics/base/include/recSup.h:68:8: note: declared here 68 | struct rset { /* record support entry table */ | ^~~~ In file included from /opt/epics/base/include/dbAccess.h:24, from ../devMch.c:174: /opt/epics/base/include/dbAccessDefs.h:210:42: warning: 'rset' is deprecated [-Wdeprecated-declarations] 210 | DBCORE_API rset * dbGetRset(const struct dbAddr *paddr); | ^~~~~~ In file included from /opt/epics/base/include/dbBase.h:22, from /opt/epics/base/include/dbAccess.h:20, from ../devMch.c:174: /opt/epics/base/include/recSup.h:68:8: note: declared here 68 | struct rset { /* record support entry table */ | ^~~~ make[2]: Leaving directory '/opt/epics/modules/ipmiComm/Db/O.linux-x86_64' make[1]: *** [/opt/epics/base/configure/RULES_ARCHS:58: install.linux-x86_64] Error 2 make[1]: Leaving directory '/opt/epics/modules/ipmiComm/Db' make: *** [/opt/epics/base/configure/RULES_DIRS:85: Db.install] Error 2 make: *** Waiting for unfinished jobs.... ```