magic/scmos
Darryl L. Miles 4e967a4766 build: out-of-tree outlier Makefiles — full make + install
Fix the remaining non-standard Makefiles so a full out-of-tree
`../configure && make && make install` builds and installs a complete
magic TCL tree, sources read from the source tree, all outputs in the
build tree.

Shared linker/preprocessor paths (scripts/configure.in, regenerated
scripts/configure):
* --version-script=${MAGICDIR}/magic/symbol.map -> ${MAGICSRC}/... so
  every shared-library link (tclmagic.so, ...) finds the source map.
* MCPP preproc.py path ${MAGICDIR}/scripts -> ${MAGICSRC}/scripts.

Programs (built via tcllibrary, PROGRAMS = magic tcltk):
* magic/Makefile: proto.magicrc, magicWasm.o and the bitmaps/.initrc/
  magicps.pro install copies use $< / $(srcdir) instead of bare names.
* tcltk/Makefile: magicexec/magicdnull compile $<; the sed'd launcher
  scripts (magic.tcl/.sh, ext2spice.sh, ext2sim.sh) read $<; VERSION dep
  -> ${MAGICSRC}; install-tcl copies each TCL file from the build dir if
  present else $(srcdir) (magic.tcl is generated, the rest are source).

Techs (scmos):
* scmos/Makefile: SC_PP template include -> $(srcdir)/extract_template;
  tech-file inputs (scmos.tech.in, *.tech.in) via $(srcdir)/$< ; recurse
  into cif_template with mkdir + -f ${MAGICSRC}/scmos/cif_template/Makefile;
  install copies from build-or-$(srcdir).
* scmos/cif_template/Makefile: MKDIR -> ${MAGICSRC}/scripts/mkdirs;
  SC_CPP gains -I$(srcdir); cpp reads $(srcdir)/cif{in,out}.c so the .gen
  includes resolve; objs/ generated in the build tree.

Data-file installs (source files copied from $(srcdir)):
* graphics/Makefile: glyphs, outline fonts, and the X11 helper build.
* windows/Makefile: glyphs and vector fonts.
* doc/Makefile: recurse into man/tutcells/html/latexfiles build-aware;
  doc/man, doc/tutcells install with $< ; doc/html tars $(srcdir);
  doc/latexfiles reads pre-built PostScript from ${MAGICSRC}/doc/psfiles.

Verified out-of-tree (mkdir _build; cd _build; ../configure): `make`
returns rc=0 (33 module libs, tclmagic.so, magicexec/magicdnull, scmos
tech files + cif_template objs, proto.magicrc), and
`make install DESTDIR=...` returns rc=0 installing 376 files
(bin/magic, tcl/tclmagic.so, sys/ glyphs+fonts+techs+dstyles), with the
source tree left completely clean.

Not exercised by the default TCL build/install and therefore not
converted here: the standalone .so/program variants of
lef/plot/router/ext2spice/ext2sim (their module libs do build), the
disabled oa module (-I. -> -I$(srcdir) still needed if enabled), the
WASM path, and doc/latexfiles PostScript *regeneration* (which still
writes into the source psfiles dir).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-26 14:54:11 -04:00
..
cif_template build: out-of-tree outlier Makefiles — full make + install 2026-07-26 14:54:11 -04:00
doc Initial commit at Tue Apr 25 08:41:48 EDT 2017 by tim on stravinsky 2017-04-25 08:41:48 -04:00
examples Initial commit at Tue Apr 25 08:41:48 EDT 2017 by tim on stravinsky 2017-04-25 08:41:48 -04:00
extract_template Finally rid myself of the C preprocessor. Took a moderately-developed 2020-02-19 14:25:58 -05:00
rules Initial commit at Tue Apr 25 08:41:48 EDT 2017 by tim on stravinsky 2017-04-25 08:41:48 -04:00
COPYRIGHT Initial commit at Tue Apr 25 08:41:48 EDT 2017 by tim on stravinsky 2017-04-25 08:41:48 -04:00
Makefile build: out-of-tree outlier Makefiles — full make + install 2026-07-26 14:54:11 -04:00
README Initial commit at Tue Apr 25 08:41:48 EDT 2017 by tim on stravinsky 2017-04-25 08:41:48 -04:00
gdsquery.tech.in Set of changes updating version 8.2 to the level of 8.1, since 8.2 2017-08-01 22:14:42 -04:00
minimum.tech.in Set of changes updating version 8.2 to the level of 8.1, since 8.2 2017-08-01 22:14:42 -04:00
mos.7bit.dstyle Initial commit at Tue Apr 25 08:41:48 EDT 2017 by tim on stravinsky 2017-04-25 08:41:48 -04:00
mos.7bit.mraster.cmap Initial commit at Tue Apr 25 08:41:48 EDT 2017 by tim on stravinsky 2017-04-25 08:41:48 -04:00
mos.7bit.mraster_dstyle Initial commit at Tue Apr 25 08:41:48 EDT 2017 by tim on stravinsky 2017-04-25 08:41:48 -04:00
mos.7bit.sgi.cmap Initial commit at Tue Apr 25 08:41:48 EDT 2017 by tim on stravinsky 2017-04-25 08:41:48 -04:00
mos.7bit.std.cmap Initial commit at Tue Apr 25 08:41:48 EDT 2017 by tim on stravinsky 2017-04-25 08:41:48 -04:00
mos.24bit.dstyle Initial commit at Tue Apr 25 08:41:48 EDT 2017 by tim on stravinsky 2017-04-25 08:41:48 -04:00
mos.24bit.std.cmap Initial commit at Tue Apr 25 08:41:48 EDT 2017 by tim on stravinsky 2017-04-25 08:41:48 -04:00
mos.OpenGL.dstyle Added code to avoid mishandling negative layer numbers when a 2019-02-14 12:19:50 -05:00
mos.OpenGL.dstyle.mark Initial commit at Tue Apr 25 08:41:48 EDT 2017 by tim on stravinsky 2017-04-25 08:41:48 -04:00
mos.OpenGL.std.cmap Added code to avoid mishandling negative layer numbers when a 2019-02-14 12:19:50 -05:00
nmos.tech.in Added a LEF section to nmos.tech, provided by Dave in fossi-chat.org. 2025-11-19 17:49:43 -05:00
scmos.tech.in Initial commit at Tue Apr 25 08:41:48 EDT 2017 by tim on stravinsky 2017-04-25 08:41:48 -04:00

README

#######################################################################
#                                                                     #
#                    MOSIS distribution Version 8.2                   #
#								      #
# This is a version control header file for MOSIS's distribution of   #
# Magic related technology files and system libraries....             #
#								      #
#      Modified by Jen-I Pi, MOSIS Project, USC/ISI    06/02/1995     #
#      Please send bug reports/comments to mosis@mosis.edu :-)        #
#								      #
#######################################################################

INTRODUCTION

  This officail MOSIS SCMOS technology release consists a famaly of
  SCMOS technology files for Magic version 6.4.4 (available from
  anonymous FTP gatekeeper.dec.com):

   * "scmos"      - standard SCMOS technology for MOSIS process with
	            minimum feature length larger than 1.5 micron.
		    ORBIT 2.0 micron analog, ORBIT 1.2 micron processes
		    are supported.
   * "scmos-tm"   - SCMOS technology with tighter metal spacing rules
		    for metal1 and metal2.
		    HP-CMOS34, HP-CMOS26B (lambda=0.5 micron) and
		    HP-CMOS14B (lambda=0.35 micron) processes are
		    supported.
   * "scmos-sub"  - SCMOS technology for HP's sub-micron CMOS processes.
		    HP-CMOS26G (lambda=0.40 micron) and CMOS14B
		    (lambda=0.30 micron) processes are supported.
   * "scmos-ibm"  - SCMOS technology for IBM CMSX-2185 process.
                    (not supported anymore, but it's there in case...)

  To invoke Magic with appropriate technology selection, you need to
  use the '-T' command option. For example, the command

     "magic -Tscmos-sub"

  start Magic with "scmos-sub" designated for HP's submicron processes.

  MOSIS's distribution of Magic technolofy file for SCMOS technology
  now has CIFinput and CIFoutput section in templates so that it will
  be easier to maintain. It also supports two layers, "open" and
  "pstop" for micro-machined design fabrication in CMOS process as 
  described by Janet C. Marshall's paper in IEEE Circuit and Devices,
  Vol. 8, N0. 6, 1992. this layer is now in a 'preliminary' stage.
 
  Before installation, please read the file 'COPYRIGHT' for copyright
  notice.

INSTALLATION

  Please install the latest release of Magic (version 6.4.4) available
  from anonymous FTP gatekeeper.dec.com.

  To generate all technology files, simply type

     "make" if your are using Magic 6.4.x, or

     "make version3" if your are using Magic 6.3.x

  To install all technology files into the standard ~cad library, just type

     "make install"

  to you system (Unix) prompt. You might want to check the path for
  standard ~cad/lib/magic/lib first before you do this...

IRSIM PARAMETERS

  Parameter files of various MOSIS supported process  for IRSIM
  switch-level simulator can be found under the sub-directory
  "irsim_parameters".

DOCUMENTATION

  Please read the file UPDATE for the lates update information...

  In the doc subdirectory, you can find a preliminary PostScript file
  for MOSIS's SCMOS Technology Manual. Warning: This manualscript is
  in a very preliminary stage, if you have any problem with it don't
  hesitate to discuss it further with me...(pi@isi.edu)

EXAMPLE

  In the 'examples' subdirectory, we have:

  palette.mag - palette of all layers available in MOSIS's SCMOS tech-
	nology". Turn your DRC off before viewing it!!

  ccd.mag - An example of a buried channel CCD layout.

  float_gate.mag - An example of a floating-gate device.

  wellcap.mag - An example of layout of linear capacitors available
	from SCNLC technology, i.e. HP's 1.2um process.

  npn.mag - An example of a Bipolar NPN transistor layout. For ORBIT's
	2um lower-noise Analog process.

  large_npn.mag - A large NPN bipolar transistor consists of smalls
	unit transistors.

  all.mag - An example of part of the design rules... NOT Complete...

  m3padframe.mag - A TinyChip padframe for HP's 1.0um process. Notice
	that those m1 strip is required to complete a DRC free pad.
	These pads use all three metal layers.

  inf_source - An example of micromachined device fabrication. This
        layout is a reproduction of Fig. 8 of Janet C. Marshall's
	article titled "High Level Melds Micromachined Devices with
	Foundries", IEEE Circuits and Devices, Vol. 8, No. 6, pp.
	10-17, Nov. 1992. A complete NIST MEMS library is also
        available from MOSIS's anonymous FTP archive.
	
BUGs

  send you bug report or suggestions to mosis@mosis.edu

Jen-I Pi  ******  05/24/95
The MOSIS Service, USC/ISI
(310) 822-1511 x640