Annotation of micropolis/src/tclx/makefile, revision 1.1.1.1

1.1       root        1: #
                      2: # Makefile --
                      3: #
                      4: # Makefile for Extended Tcl.  This requires Tcl 6.1 or Tcl 6.2 from Berkeley,
                      5: # which should be compiled before running this makefile.  Its location is
                      6: # configured below.
                      7: # 
                      8: #------------------------------------------------------------------------------
                      9: # Copyright 1992 Karl Lehenbauer and Mark Diekhans.
                     10: #
                     11: # Permission to use, copy, modify, and distribute this software and its
                     12: # documentation for any purpose and without fee is hereby granted, provided
                     13: # that the above copyright notice appear in all copies.  Karl Lehenbauer and
                     14: # Mark Diekhans make no representations about the suitability of this
                     15: # software for any purpose.  It is provided "as is" without express or
                     16: # implied warranty.
                     17: #------------------------------------------------------------------------------
                     18: # $Id: Makefile,v 2.0 1992/10/16 04:54:45 markd Rel $
                     19: #------------------------------------------------------------------------------
                     20: #
                     21: 
                     22: include config.mk
                     23: include config/$(TCL_CONFIG_FILE)
                     24: SHELL=/bin/sh
                     25: 
                     26: #------------------------------------------------------------------------------
                     27: 
                     28: # List of files that are touched by secondary makefiles when something changes.
                     29: 
                     30: MADE.FILES=ucbsrc/made.tmp ossupp/made.tmp src/made.tmp
                     31: TKMADE.FILES=tkucbsrc/made.tmp
                     32: 
                     33: CFLAGS= $(OPTIMIZE_FLAG) $(XCFLAGS) -I$(TCL_UCB_DIR) $(MEM_DEBUG_FLAGS) \
                     34:         $(SYS_DEP_FLAGS)
                     35: 
                     36: #------------------------------------------------------------------------------
                     37: 
                     38: all: tcl tcldef runtcl $(TCL_TK_SHELL)
                     39: 
                     40: 
                     41: #------------------------------------------------------------------------------
                     42: # Compile the Extended Tcl library and link the Tcl shell.
                     43: #
                     44: 
                     45: tcl: TCLX_MAKES
                     46: 
                     47: TCLX_MAKES: libtcl.a
                     48:        cd ucbsrc;    $(MAKE) -$(MAKEFLAGS) all
                     49:        cd ossupp;    $(MAKE) -$(MAKEFLAGS) all
                     50:        cd tclsrc;    $(MAKE) -$(MAKEFLAGS) all
                     51:        cd src;       $(MAKE) -$(MAKEFLAGS) all
                     52: 
                     53: 
                     54: # Copy the UCB libtcl.a file from where it was built.  Force the other
                     55: # Makefiles to add their .o files to the library by nuking their made.tmp file.
                     56: 
                     57: libtcl.a: $(TCL_UCB_DIR)/libtcl.a
                     58:        cp $(TCL_UCB_DIR)/libtcl.a .
                     59:        rm -f  $(MADE.FILES)
                     60: 
                     61: #------------------------------------------------------------------------------
                     62: # Generate a libtk.a with extensions and a wish shell with Extended Tcl
                     63: # commands.
                     64: #
                     65: 
                     66: wish: TKX_MAKES runwish
                     67: 
                     68: TKX_MAKES: libtk.a
                     69:        cd tkucbsrc; $(MAKE) -$(MAKEFLAGS) all
                     70:        cd tksrc;    $(MAKE) -$(MAKEFLAGS) all
                     71: 
                     72: 
                     73: # Copy the UCB libtk.a file.  Force the other Makefiles to add their
                     74: # .o files to the library by nuking their made.tmp file.
                     75: 
                     76: libtk.a: $(TCL_TK_DIR)/libtk.a
                     77:        cp $(TCL_TK_DIR)/libtk.a libtk.a
                     78:        rm -f $(TKMADE.FILES)
                     79: 
                     80: 
                     81: #------------------------------------------------------------------------------
                     82: # Generate a temporary TCLDEFAULT file so Tcl can be run in this directory.
                     83: # Also generate a script to point the TCLDEFAULT environment variable
                     84: # at this file for testing Tcl before its installed.
                     85: 
                     86: tcldef:
                     87:        @echo " -       Generating temporary TCLDEFAULT file.     -"
                     88:        @echo " - Use runtcl script to test Tcl before installing -"
                     89:        @echo " - Use runwish script to test Tk before installing -"
                     90:        @echo '# Temporary TCLDEFAULT file for debugging'  >tcldef
                     91:        @echo "set TCLPATH `pwd`/tcllib"                  >>tcldef
                     92:        @echo "set TCLINIT `pwd`/tcllib/tclinit.tcl"      >>tcldef
                     93: 
                     94: runtcl:
                     95:        @echo ':'                                              >runtcl
                     96:        @echo '# script for testing Tcl before installation'  >>runtcl
                     97:        @echo "TCLDEFAULT=`pwd`/tcldef"                       >>runtcl
                     98:        @echo "export TCLDEFAULT"                             >>runtcl
                     99:        @echo "if [ \$$# = 0 ]"                               >>runtcl
                    100:        @echo "then"                                          >>runtcl
                    101:        @echo "    exec `pwd`/tcl"                            >>runtcl
                    102:        @echo "else"                                          >>runtcl
                    103:        @echo "    exec `pwd`/tcl \"\$$@\""                   >>runtcl
                    104:        @echo "fi"                                            >>runtcl
                    105:        chmod a+rx runtcl
                    106: 
                    107: runwish:
                    108:        @echo ':'                                              >runwish
                    109:        @echo '# script for testing wish before installation' >>runwish
                    110:        @echo "TCLDEFAULT=`pwd`/tcldef"                       >>runwish
                    111:        @echo "export TCLDEFAULT"                             >>runwish
                    112:        @echo "if [ \$$# = 0 ]"                               >>runwish
                    113:        @echo "then"                                          >>runwish
                    114:        @echo "    exec `pwd`/wish"                           >>runwish
                    115:        @echo "else"                                          >>runwish
                    116:        @echo "    exec `pwd`/wish \"\$$@\""                  >>runwish
                    117:        @echo "fi"                                            >>runwish
                    118:        chmod a+rx runwish
                    119: 
                    120: #------------------------------------------------------------------------------
                    121: #
                    122: #  just test to see if the C++ include file compiles and links
                    123: 
                    124: tclplus:
                    125:        cd src;$(MAKE) -$(MAKEFLAGS) tclplus
                    126: 
                    127: #------------------------------------------------------------------------------
                    128: #
                    129: # Run the UCB and Extended Tcl tests.
                    130: 
                    131: test: ucbtests extdtests
                    132: 
                    133: ucbtests: all
                    134:        @echo ""
                    135:        @echo "**************************************************"
                    136:        @echo "* Ignore failures in tests:  expr-2.2 & expr-2.6 *"
                    137:        @echo "**************************************************"
                    138:        @echo ""
                    139:        ./runtcl -c "cd $(TCL_UCB_DIR)/tests;source all"
                    140: 
                    141: extdtests: all
                    142:        ./runtcl -c "cd tests;source all"       
                    143: 
                    144: #------------------------------------------------------------------------------
                    145: # Install Tcl.
                    146: 
                    147: install: all
                    148:        ./runtcl tclsrc/install.tcl
                    149: 
                    150: 
                    151: #------------------------------------------------------------------------------
                    152: # Clean up the mess we made.
                    153: 
                    154: clean:
                    155:        cd ucbsrc;    $(MAKE) -$(MAKEFLAGS) clean
                    156:        cd ossupp;    $(MAKE) -$(MAKEFLAGS) clean
                    157:        cd src;       $(MAKE) -$(MAKEFLAGS) clean
                    158:        cd tclsrc;    $(MAKE) -$(MAKEFLAGS) clean
                    159:        cd tkucbsrc;  $(MAKE) -$(MAKEFLAGS) clean
                    160:        cd tksrc;     $(MAKE) -$(MAKEFLAGS) clean
                    161:        touch junk~ config/junk~
                    162:        -rm -f *~ config/*~ libtcl.a tcldef libtk.a runtcl runwish

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.