home *** CD-ROM | disk | FTP | other *** search
Makefile | 1994-08-21 | 7.0 KB | 212 lines |
- # Generated automatically from Makefile.in by configure.
- #
- # src/Makefile.in --
- #
- # Makefile for Extended Tcl C sources.
- #
- #------------------------------------------------------------------------------
- # Copyright 1992-1994 Karl Lehenbauer and Mark Diekhans.
- #
- # Permission to use, copy, modify, and distribute this software and its
- # documentation for any purpose and without fee is hereby granted, provided
- # that the above copyright notice appear in all copies. Karl Lehenbauer and
- # Mark Diekhans make no representations about the suitability of this
- # software for any purpose. It is provided "as is" without express or
- # implied warranty.
- #------------------------------------------------------------------------------
- # $Id: Makefile.in,v 4.0 1994/07/16 05:27:54 markd Rel $
- #------------------------------------------------------------------------------
- #
- SHELL = /bin/sh
-
- #------------------------------------------------------------------------------
- # Autoconfig defines that can be overridden in Config.mk
-
- CC = cc
- RANLIB = ranlib
- srcdir = .
- srcbasedir = /usr/src/tclX7.3b
- bldbasedir = /usr/src/tclX7.3b
- prefix = /usr/local
- exec_prefix = /usr/local
- ARCH =
- LIBS = -lbsd -lieee -lm
-
- #------------------------------------------------------------------------------
- # Include user-editable defines.
-
- include ${bldbasedir}/Config.mk
-
- #------------------------------------------------------------------------------
-
- LIBTCL_A = ${bldbasedir}/tclmaster/lib${ARCH}/libtcl.a
- LIBTCLX_A = ${bldbasedir}/tclmaster/lib${ARCH}/libtclx.a
- TCL = ${bldbasedir}/tclmaster/bin${ARCH}/tcl
- TCLEXTEND_H = ${bldbasedir}/tclmaster/include/tclExtend.h
- TCLPP_H = ${bldbasedir}/tclmaster/include/tcl++.h
- APPINIT = ${bldbasedir}/tclmaster/src/tclXAppInit.c
- SYSLIBS = ${bldbasedir}/tclmaster/src/SYSLIBS${ARCH}
- TCLXMAINPP_C = ${bldbasedir}/tclmaster/src/tclXmain++.C
- TCLXMAINPP_O = ${bldbasedir}/tclmaster/lib${ARCH}/tclXmain++.o
-
- LDLIBS = ${LIBTCLX_A} ${LIBTCL_A} ${LIBS}
-
- CC_FLAGS = ${CPPFLAGS} ${XCFLAGS} ${CFLAGS} -I${srcbasedir}/src \
- -I${bldbasedir}/src -I${TCL_UCB_SRC}
-
- .c.o:
- ${CC} ${CC_FLAGS} -c $<
-
- %.so: %.c
- ${SHCC} -c ${CC_FLAGS} $< -o $@
-
- #------------------------------------------------------------------------------
-
- OBJS= \
- tclXbsearch.o tclXchmod.o tclXclock.o tclXcmdInit.o \
- tclXcmdloop.o tclXcnvclock.o tclXdebug.o tclXdup.o \
- tclXfcntl.o tclXfilecmds.o tclXfilescan.o tclXflock.o \
- tclXfstat.o tclXgeneral.o tclXgetdate.o tclXhandles.o \
- tclXid.o tclXinit.o tclXkeylist.o tclXlib.o \
- tclXlist.o tclXmain.o tclXmath.o tclXmsgcat.o \
- tclXprocess.o tclXprofile.o tclXregexp.o tclXselect.o \
- tclXserver.o tclXsignal.o tclXshell.o tclXstring.o \
- tclXunixcmds.o tclXutil.o tclXdata.o
-
- UCBOBJS=tclCmdIL.o
-
- LDFLAGS = -N
- DLLBIN = /usr/dll/bin
- SHCC = ${CC} -B/usr/dll/jump/
- SHOBJS = ${subst tclXmain.so,,${OBJS:.o=.so}} ${UCBOBJS:.o=.so} oldCompat.so
- JUMP_VER = 3.2.0
- JUMP_ARGS = -v ${JUMP_VER} -a 0x60c80000 -j 0x1000 -g 4096
- export JUMP_DIR = $(shell pwd)/jump
- export JUMP_LIB = libtclx
-
- #------------------------------------------------------------------------------
- # Compile the TclX library and link the shell. If the link fails, purge
- # the executable, as some systems leave invalid executables around.
-
- all: made.tmp ${TCL} ${TCLEXTEND_H} ${TCLPP_H} ${APPINIT} ${SYSLIBS} \
- ${TCLXMAINPP_C} ${TCL_PLUS_BUILD}
-
- ${TCL}: tclXAppInit.o ${LIBTCLX_A} ${LIBTCL_A} made.tmp
- ${CC} ${CC_FLAGS} ${XLDFLAGS} tclXAppInit.o ${LDLIBS} ${XLDLIBS} \
- -o ${TCL} || (rm -f ${TCL}; exit 1)
-
- made.tmp ${LIBTCLX_A}: ${OBJS} ${UCBOBJS} ${CPLUSOBJS}
- ${AR} cr ${LIBTCLX_A} ${OBJS} ${UCBOBJS} ${CPLUSOBJS}
- ${RANLIB} ${LIBTCLX_A}
- touch made.tmp
-
- shared: tcl.shared
-
- install.shared: shared
- install -c -s tcl.shared ${prefix}/bin/tcl
- install -c -m 644 libtclx.sa ${prefix}/lib
- install -c -s libtclx.so.${JUMP_VER} ${prefix}/lib
- ldconfig
-
- tcl.shared: tclXAppInit.o libtclx.sa
- ${CC} ${LDFLAGS} ${XLDFLAGS} tclXAppInit.o libtclx.sa ${TCL_UCB_SRC}/libtcl.sa ${LIBS} -o $@
-
- libtclx.sa: ${SHOBJS} libtclx.so.${JUMP_VER}
- ${DLLBIN}/mkstubs -l libtclx ${JUMP_ARGS} -- libtclx
- ar rs libtclx.sa tclXmain.o
-
- libtclx.so.${JUMP_VER}: ${SHOBJS}
- ${DLLBIN}/mkimage -l libtclx ${JUMP_ARGS} -- ${SHOBJS} ${TCL_UCB_SRC}/libtcl.sa $(LIBS) -lc `${CC} -print-libgcc-file-name` -lc
-
- tclCmdIL.o: tclCmdIL.c ${TCL_UCB_SRC}/patchlevel.h
- MASTER=${TCL_MASTERDIR}/`../tools/tclxversion` ;\
- ${CC} -c ${CC_FLAGS} -DTCL_LIBRARY=\"$$MASTER\" tclCmdIL.c
-
- tclCmdIL.so: tclCmdIL.c ${TCL_UCB_SRC}/patchlevel.h
- MASTER=${TCL_MASTERDIR}/`../tools/tclxversion` ;\
- ${SHCC} -c ${CC_FLAGS} -DTCL_LIBRARY=\"$$MASTER\" tclCmdIL.c -o $@
-
- tclCmdIL.c: ${TCL_UCB_SRC}/tclCmdIL.c
- rm -f tclCmdIL.c
- cp ${TCL_UCB_SRC}/tclCmdIL.c tclCmdIL.c
-
- tclXinit.o: tclXinit.c
- MASTER=${TCL_MASTERDIR}/`../tools/tclxversion` ;\
- ${CC} -c ${CC_FLAGS} -DTCL_MASTERDIR=\"$$MASTER\" \
- ${srcdir}/tclXinit.c
-
- tclXinit.so: tclXinit.c
- MASTER=${TCL_MASTERDIR}/`../tools/tclxversion` ;\
- ${SHCC} -c ${CC_FLAGS} -DTCL_MASTERDIR=\"$$MASTER\" \
- ${srcdir}/tclXinit.c -o $@
-
- tclXcmdInit.o: tclXcmdInit.c tclXpatchl.h
-
- tclXgetdate.c: tclXgetdate.y
- ${YACC} $(srcdir)/tclXgetdate.y
- sed 's/yy/TclXyy/g' <y.tab.c >tclXgetdate.c
- rm y.tab.c
-
- tcl++.o: tcl++.C tcl++.h
- ${CCPLUS} -c ${CC_FLAGS} ${srcdir}/tcl++.C
- ${AR} cr ${LIBTCLX_A} tcl++.o
- ${RANLIB} ${LIBTCLX_A}
- touch made.tmp
-
- #------------------------------------------------------------------------------
- # Copy include files, etc to the master directory.
- #
-
- ${TCLEXTEND_H}: tclExtend.h
- rm -f ${TCLEXTEND_H}
- cp ${srcdir}/tclExtend.h ${TCLEXTEND_H}
-
- ${TCLPP_H}: tcl++.h
- rm -f ${TCLPP_H}
- cp ${srcdir}/tcl++.h ${TCLPP_H}
-
- ${APPINIT}: tclXAppInit.c
- rm -f ${APPINIT}
- cp ${srcdir}/tclXAppInit.c ${APPINIT}
-
- ${SYSLIBS}: SYSLIBS
- rm -f ${SYSLIBS}
- cp SYSLIBS ${SYSLIBS}
-
- ${TCLXMAINPP_C}: tclXmain++.C
- rm -f ${TCLXMAINPP_C}
- cp tclXmain++.C ${TCLXMAINPP_C}
-
- #------------------------------------------------------------------------------
- # Make sure tcl++.h compiles, plus force tcl++.o into the library.
-
- TCL_PLUS: tcl++ tcl++.o ${TCLXMAINPP_O}
-
- tcl++: tclXmain++.o tcl++.o made.tmp
- ${CCPLUS} ${CC_FLAGS} ${XLDFLAGS} tclXmain++.o tclXAppInit.o \
- ${LDLIBS} ${XLDLIBS} -o tcl++
-
- tclXmain++.o: tcl++.h tclXmain++.C
- ${CCPLUS} -c ${CC_FLAGS} tclXmain++.C
-
- tclXmain++.C: tclXmain.c
- rm -f tclXmain++.C
- cp ${srcdir}/tclXmain.c tclXmain++.C
-
- ${TCLXMAINPP_O}: tclXmain++.o
- rm -f ${TCLXMAINPP_O}
- cp tclXmain++.o ${TCLXMAINPP_O}
-
- #------------------------------------------------------------------------------
-
- clean:
- -rm -f made.tmp tclXgetdate.c tclXmain++.C tclXAppInit.o tclCmdIL.c
- -rm -f ${OBJS} ${UCBOBJS} tclXmain++.o tcl++.o ${TCL} tcl++
- -rm -f ${SHOBJS} tcl.shared libtclx.sa libtclx.so.* jump/_*
-
- #------------------------------------------------------------------------------
- # Restore to the distributed state.
-
- distclean: clean
- rm -f Makefile tclXconfig.h SYSLIBS
-