home *** CD-ROM | disk | FTP | other *** search
- Following is an explanation how to define macros in the macro files:
-
- First define the operating system. The following systems are already availible:
- iPSC - Intel Hypercube
- AIX - AIX on IBM Workstations
- CONVEX - ConvexOs on Convex Supercomputers
- HPUX - HpUx on Hewlett Packard Machines
- SPARC - SunOs 4.1 or greater on Sun Sparc Stations
- ULTRIX - Ultrix on Vaxes
- UNICOS - UNICOS on Cray Supercomputers
- SCO_XENIX - SCO Xenix Version 2.3 on IBM PCs
- SCO_UNIX - SCO Unix Version 3.2 on IBM PCs
- e.g. define 'OS = SPARC'
-
- Second define the system type to one of the following:
- BSD - BSD Unix Version 4.3
- SYSTEM_V - Unix System V
- e.g. define 'SYSTEM = BSD'
-
- Third define the type of the inter process communication routines you want to
- use. Availible are
- CUBE - intel hypercube communication primitives
- SOCKET - stream sockets
- MSGSEM - message queues and semaphores
- e.g. define 'IPC = SOCKET'
-
- Fourthly define the type of network you want to distribute the processes in.
- SINGLE - one machine only, no distribution of processes
- HOMOGENEOUS - distribution of processes in a homogenous network
- HETEROGENEOUS - distribution of processes in a heterogenous network
- Choose 'SINGLE' to use the compiler on a single computer, particular on a
- multiprocessor workstation, where all processes are created "local", i.e. no
- distribution of processes will be performed. Choose 'HOMOGENEOUS' to use the
- compiler on a network of binary compatible machines, i.e. the processes will
- be distributed in a homogenous network. Choose 'HETEROGENEOUS' to use the
- compiler on a network of various different Unix machines, i.e. the processes
- will be distributed in a heterogenous network.
- Note: HOMOGENEOUS provides faster, HETEROGENEOUS provides more powerful inter
- process communications!
- If the operating system equals iPSC this step is not required!
- e.g. define 'NETWORK = HETEROGENEOUS'
-
- Next define some directory names.
- MAKEDIRS - the directories you want to make by the root Makefile
- INSTALLDIR - where to install needed files
- e.g. define
- MAKEDIRS = lib dcc dcadmin dckill
- INSTALLDIR = /usr/local/Distributed_C
-
- At least define the name of the compiler, name of the loader, the compiler and
- loader flags and so on for generation of the runtime library, the compiler,
- the administration process and the process killer process.
-
- The common compiler, compiler flags and loader flags:
- e.g. define
- COMCC = cc
- COMCFLAGS = -D$(OS) -D$(SYSTEM) -D$(IPC) -D$(NETWORK) -g
- COMLDFLAGS = -Me -g
-
- The name of the compiler used for building the library and the appropriate
- compiler flags:
- e.g. define
- CC_LIB = cc
- CFLAGS_LIB = $(COMCFLAGS)
-
- The Names of the compiler and loader used for building the compiler, the
- appropriate compiler and loader flags and special yacc flags:
- e.g. define
- CC_DCC = cc
- CFLAGS_DCC = $(COMCFLAGS)
- LD_DCC = cc
- LDFLAGS_DCC = $(COMLDFLAGS)
- LIBS_DCC = -lmalloc
- YFLAGS_DCC = -Sr1000 -Ss1000 -Sa6000 -Sm10000
-
- The Names of the compiler and loader used for building the administration
- process, the appropriate compiler and loader flags:
- CC_DCA = cc
- CFLAGS_DCA = $(COMCFLAGS)
- LD_DCA = cc
- LDFLAGS_DCA = $(COMLDFLAGS)
- LIBS_DCA = -lx
-
- The Names of the compiler and loader used for building the process killer
- process, the appropriate compiler and loader flags:
- CC_DCK = cc
- CFLAGS_DCK = $(COMCFLAGS)
- LD_DCK = cc
- LDFLAGS_DCK = $(COMLDFLAGS) -g
- LIBS_DCK =
-