next up previous
Next: simld Up: simula Previous: simcomp

Simmake


     NAME
	  simmake - compile a set of Simula programs or	separate
	  classes/procedures

     SYNOPSIS
	  simld	filelist command [-L=path] [-I=path] [-C=path] [-l]

     DESCRIPTION
	  Simmake  reads  Simula   source-files	  and	analyzes   the
	  dependencies	between	 Simula	files (by looking for external
	  declarations and %include directives). This information  can
	  be  used create a Makefile or, as an alterative, simmake can
	  run simcomp to recompile all files affected by a change.

	  Simmake understands the information in the  attribute	 files
	  and  can  do	a  better job than make	when recompiling files
	  after	a change sice make is only  looking  at	 file  systems
	  time-stamps. The possibility to create a makefile is usefull
	  also to get an overview  of  dependencies  in	 a  system  of
	  separately compiled Simula classes and procedures.

     EXAMPLE
	  In the simplest case,	a set of Simula	files in  a  directory
	  can be compiled with the single command:

		simmake	*.sim -c -l


	  Producing a makefile dependency  listing,  including	needed
	  files	in another directory, say in ../separate:

		simmake	main.sim -m -L=.. -C=separate


	  Print	commands to be executed	rather than actually executing
	  them:

		simmake	*.sim -s


     OPTIONS
	  Options  can appear in any order.

	  command
	       =-c|-s|-m

	  -c Compile the programs which	need  compilation  by  calling
	  simcomp.
	  -c=<script> Compile programs needing	compilation  by	 using
	  <script>.
	  -s Print the commands	to compile  the	 programs  which  need
	  compilation	(using	 a  pessimistic	 assumption  that  all
	  compiles result in updated attribute files).
	  -s=<script> same as  '-s',  but  use	<script>  rather  than
	  simcomp for compilation.
	  -m Produce a Makefile	to recompile programs using simcomp.
	  -m=<script> same as  '-m',  but  use	<script>  rather  than
	  simcomp.
	  -L=<dir1>:<dir2>:... directory searchlist, with same meaning
	  as  for  simcomp.  simmake  also  interprets the environment
	  variable SIM_LIBRARY_PATH in the same	as simcomp does.


	  -I=<lib1>:<lib2>:...
	       library search  list  with  the	same  meaning  as  for
	       simcomp

	  -C=<lib3>:<lib4>:...
	       library search list  searched  before  the  '-I'	 list.
	       Simula	files	found	using  this  path  that	 needs
	       compilation are compiled	(while files found  using  the
	       '-I' list that are assumed to be	compiled up to date).


	  -l   include a search	of the libraries  installed  with  the
	       Lund	Simula	   system.     Shorthand    for:    "-
	       L=/usr/local/simulabin -I=simlib:libsim:..."

     SEE ALSO
	  simman simcomp - to compile a	Simula program

	  simman simld - to  link  compiled  Simula  modules  into  an
	  executable program

	  simman simula	- to  get  overview  and  pointers  to	Simula
	  libraries