Modified the sky130 Makefile to prevent the "install" from running concurrently on PDK variants A and B if the "-j" option is passed to "make" to enable a multithreaded build. If concurrent, then files in variant B may install before variant A, preventing the files from being compared and replaced by symbolic links. Note that this does not invalidate anything in the PDK, but it will make the build different from run to run.
diff --git a/VERSION b/VERSION index 8628b0c..b5d581a 100644 --- a/VERSION +++ b/VERSION
@@ -1 +1 @@ -1.0.295 +1.0.296
diff --git a/sky130/Makefile.in b/sky130/Makefile.in index 9373208..1461b3e 100644 --- a/sky130/Makefile.in +++ b/sky130/Makefile.in
@@ -1634,7 +1634,12 @@ -link_from ${DIST_LINK_TARGETS_A} 2>&1 | tee -a ${SKY130A}_install.log echo "Ended SKY130 PDK migration on "`date` >> ${SKY130A}_install.log -install-B: +# NOTE: if DIST_LINK_TARGETS_B points back to the A variant, then the install +# of B depends on the install of A. Can't think of a way to make the dependency +# itself depend on the value of DIST_LINK_TARGETS_B, so I'm just forcing the +# install to always be sequential: install A first, then B. + +install-B: install-A echo "Starting SKY130 PDK migration on "`date` > ${SKY130B}_install.log ${INSTALL} \ -source ${STAGING_PATH}/${SKY130B} \