Fixed the sky130 Makefile, which recently accidentally got committed
with a recipe intended for the continuous models, which exist only
in a private repository. The error prevents open_pdks from
building and installing libs.tech/ngspice/.
diff --git a/VERSION b/VERSION
index 7681bff..aeffd51 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-1.0.314
+1.0.315
diff --git a/sky130/Makefile.in b/sky130/Makefile.in
index 6b6bebe..f509275 100644
--- a/sky130/Makefile.in
+++ b/sky130/Makefile.in
@@ -1151,65 +1151,6 @@
fi
primitive-%:
- # Install device models from custom files
- ${STAGE} -source ./custom -target ${STAGING_PATH}/${SKY130$*} \
- -ngspice sky130_fd_pr/combined_models/* \
- 2>&1 | tee -a ${SKY130$*}_make.log
- # Install device layouts from custom sources
- ${STAGE} -source ./custom -target ${STAGING_PATH}/${SKY130$*} \
- -gds sky130_fd_pr/*.gds \
- options=custom/scripts/gds_import_setup.tcl \
- -library primitive sky130_fd_pr 2>&1 | tee -a ${SKY130$*}_make.log
- # Install base device library from vendor files.
- ${STAGE} -source ${SKYWATER_LIBS_PATH} -target ${STAGING_PATH}/${SKY130$*} \
- -gds %l/latest/cells/*/*.gds \
- no-copy=custom/sky130_fd_pr/*.gds \
- include=custom/sky130_fd_pr/*.gds \
- compile-only \
- options=custom/scripts/gds_import_setup.tcl \
- -lef %l/latest/cells/*/*.magic.lef compile-only \
- -spice %l/latest/cells/*/*.spice filter=custom/scripts/rename_cells.py \
- -library primitive sky130_fd_pr 2>&1 | tee -a ${SKY130$*}_make.log
-
- # Custom: Patch the models to remove the substrate pin from the PNP
- # device, which has no independent substrate pin (collector=substrate)
- ${PATCH} -p4 -f -d ${STAGING_PATH}/${SKY130$*}/libs.ref/${PR_SPICE} \
- < custom/patches/sky130_fd_pr_3.patch \
- 2>&1 | tee -a ${SKY130$*}_make.log || true
-
- # Fix up the PNP model file before running the next modification
- head -15 ${STAGING_PATH}/${SKY130$*}/libs.ref/${PR_SPICE}/sky130_fd_pr__pnp_05v5_W3p40L3p40.model.spice > ${STAGING_PATH}/${SKY130$*}/libs.ref/${PR_SPICE}/temp
- tail -39 ${STAGING_PATH}/${SKY130$*}/libs.ref/${PR_SPICE}/sky130_fd_pr__pnp_05v5_W3p40L3p40.model.spice >> ${STAGING_PATH}/${SKY130$*}/libs.ref/${PR_SPICE}/temp
- mv ${STAGING_PATH}/${SKY130$*}/libs.ref/${PR_SPICE}/temp ${STAGING_PATH}/${SKY130$*}/libs.ref/${PR_SPICE}/sky130_fd_pr__pnp_05v5_W3p40L3p40.model.spice
- # Custom: Parse the (commented out) statistics blocks and generate
- # ngspice-compatible monte carlo parameters for mismatch and process
- ./custom/scripts/mismatch_params.py ${EF_FORMAT} -variant=${SKY130$*} \
- 2>&1 | tee -a ${SKY130$*}_make.log || true
- ./custom/scripts/process_params.py ${EF_FORMAT} -variant=${SKY130$*} \
- 2>&1 | tee -a ${SKY130$*}_make.log || true
- # Custom: Change vt to local_vt in one file for Xyce compatibilty
- ./custom/scripts/xyce_hack.py \
- ${STAGING_PATH}/${SKY130$*}/libs.ref/${PR_SPICE}/sky130_fd_pr__res_iso_pw.model.spice \
- 2>&1 | tee -a ${SKY130$*}_make.log || true
- # Custom: Remove ACM model parameters from BSIM3 devices
- ./custom/scripts/xyce_hack2.py \
- ${STAGING_PATH}/${SKY130$*}/libs.ref/${PR_SPICE}/sky130_fd_pr__special_nfet_pass.pm3.spice \
- 2>&1 | tee -a ${SKY130$*}_make.log || true
- ./custom/scripts/xyce_hack2.py \
- ${STAGING_PATH}/${SKY130$*}/libs.ref/${PR_SPICE}/sky130_fd_pr__special_pfet_pass.pm3.spice \
- 2>&1 | tee -a ${SKY130$*}_make.log || true
- ./custom/scripts/xyce_hack2.py \
- ${STAGING_PATH}/${SKY130$*}/libs.ref/${PR_SPICE}/sky130_fd_pr__special_nfet_latch.pm3.spice \
- 2>&1 | tee -a ${SKY130$*}_make.log || true
-
- # Custom: Add special device ID layers to bipolar layouts in magic
- # to make the extraction models correct.
- ./custom/scripts/add_bipolar_ids.py ${EF_FORMAT} -variant=${SKY130$*} \
- 2>&1 | tee -a ${SKY130$*}_make.log || true
-
-primitive-legacy-%:
- # This is the former recipe for primitive-% and has been superceded
- # by the combined device models found in custom/sky130_fd_pr/.
# Install device subcircuits from vendor files
${STAGE} -source ${SKYWATER_LIBS_PATH} -target ${STAGING_PATH}/${SKY130$*} \
-ngspice sky130_fd_pr/latest/models/* \