|
| 1 | + |
| 2 | +##### Top of the Tkhtml source tree - the directory with this file in it. |
| 3 | +# |
| 4 | +TOP = $(HOME)/work/tkhtml/htmlwidget |
| 5 | + |
| 6 | +##### BUILD can be DEBUG, RELEASE or MEMDEBUG. |
| 7 | +# |
| 8 | +BUILD = DEBUG |
| 9 | +# BUILD = RELEASE |
| 10 | +# BUILD = MEMDEBUG |
| 11 | +# BUILD = PROFILE |
| 12 | + |
| 13 | +##### Path to hv3_polipo binary to include in starkit builds. |
| 14 | +# |
| 15 | +HV3_POLIPO = $(HOME)/bin/hv3_polipo |
| 16 | + |
| 17 | +##### Version of and path to the Tcl installation to use. |
| 18 | +# |
| 19 | +TCLVERSION = 8.5 |
| 20 | + |
| 21 | +TCL_RELEASE = $(HOME)/tcl |
| 22 | +TCL_DEBUG = $(HOME)/tcl |
| 23 | +TCL_PROFILE = $(HOME)/tcl_profile |
| 24 | +#TCL_PROFILE = $(HOME)/tcl |
| 25 | +TCL_MEMDEBUG = $(HOME)/memtcl |
| 26 | +TCL = $(TCL_$(BUILD)) |
| 27 | + |
| 28 | +# MKSTARKIT = ~/tcl/bin/tclkit-linux-x86-xft ~/bin/sdx.kit wrap |
| 29 | +MKSTARKIT = ~/bin/tclkit ~/bin/sdx.kit wrap |
| 30 | +STARKITRT = ~/bin/tclkit |
| 31 | + |
| 32 | +##### Javascript libaries - libgc.a and libsee.a |
| 33 | +# |
| 34 | +JS_SHARED_LIB = libTclsee.so |
| 35 | + |
| 36 | +JSLIB = $(HOME)/work/tkhtml/js/lib/libgc.a |
| 37 | +JSLIB += $(HOME)/work/tkhtml/js/lib/libsee.a -lpthread |
| 38 | +JSFLAGS = -I$(HOME)/work/tkhtml/js/include |
| 39 | + |
| 40 | +#JSLIB = $(HOME)/javascript/install_nogc/lib/libsee.a |
| 41 | +#JSFLAGS = -I$(HOME)/javascript/install_nogc/include -DNO_HAVE_GC |
| 42 | + |
| 43 | +##### Flags passed to the C-compiler to link to Tcl. |
| 44 | +# |
| 45 | +# TCLLIB_DEBUG = -L$(TCL)/lib -ltcl$(TCLVERSION)g -ltk$(TCLVERSION)g |
| 46 | +TCLLIB_RELEASE = -L$(TCL)/lib -ltcl$(TCLVERSION) -ltk$(TCLVERSION) |
| 47 | +TCLLIB_DEBUG = -L$(TCL)/lib -ltcl$(TCLVERSION) -ltk$(TCLVERSION) |
| 48 | + |
| 49 | +TCLLIB_PROFILE = $(TCL_PROFILE)/lib/libtcl8.5.a $(TCL_PROFILE)/lib/libtk8.5.a |
| 50 | +TCLLIB_PROFILE += -lX11 -lXft -lXss |
| 51 | + |
| 52 | +TCLLIB_MEMDEBUG = $(TCLLIB_DEBUG) |
| 53 | +TCLLIB_MEMDEBUG += $(TCL)/lib/libtclstub$(TCLVERSION).a |
| 54 | +TCLLIB_MEMDEBUG += $(TCL)/lib/libtkstub$(TCLVERSION).a |
| 55 | + |
| 56 | +TCLLIB = -L/usr/X11R6/lib/ -lX11 -ldl -lm $(TCLLIB_$(BUILD)) |
| 57 | + |
| 58 | +##### The C-compiler to use and the flags to pass to it. |
| 59 | +# |
| 60 | +CC_RELEASE = gcc |
| 61 | +CC_DEBUG = gcc |
| 62 | +CC_MEMDEBUG = $(CC_DEBUG) |
| 63 | +CC_PROFILE = $(CC_DEBUG) |
| 64 | +CC = $(CC_$(BUILD)) |
| 65 | +BCC = $(CC_$(BUILD)) |
| 66 | + |
| 67 | +CFLAGS_RELEASE = -O2 -Wall -DNDEBUG -DHTML_MACROS -DTKHTML_ENABLE_PROFILE |
| 68 | +CFLAGS_DEBUG = -g -Wall -DHTML_DEBUG -DTKHTML_ENABLE_PROFILE |
| 69 | +CFLAGS_PROFILE = -g -pg -Wall -DNDEBUG -DTKHTML_ENABLE_PROFILE |
| 70 | +CFLAGS_MEMDEBUG = -g -Wall -DRES_DEBUG -DHTML_DEBUG -DTCL_MEM_DEBUG=1 |
| 71 | +CFLAGS = $(CFLAGS_$(BUILD)) |
| 72 | + |
| 73 | +##### The name of the shared library file to build. |
| 74 | +# |
| 75 | +SHARED_LIB_DEBUG = libTkhtml3g.so |
| 76 | +SHARED_LIB_PROFILE = libTkhtml3pg.so |
| 77 | +SHARED_LIB_MEMDEBUG = $(SHARED_LIB_DEBUG) |
| 78 | +SHARED_LIB_RELEASE = libTkhtml3.so |
| 79 | +SHARED_LIB = $(SHARED_LIB_$(BUILD)) |
| 80 | + |
| 81 | +##### Command to build a shared library from a set of object files. The |
| 82 | +# command executed will be: |
| 83 | +# |
| 84 | +# $(MKSHLIB) $(OBJS) -o $(SHARED_LIB) |
| 85 | +# |
| 86 | +MKSHLIB = $(CC) -shared |
| 87 | +TCLSTUBSLIB_MEMDEBUG = "/home/dan/memtcl/lib/libtclstub8.5.a" |
| 88 | +TCLSTUBSLIB_MEMDEBUG += "/home/dan/memtcl/lib/libtkstub8.5.a" |
| 89 | + |
| 90 | +TCLSTUBSLIB = $(TCLSTUBSLIB_$(BUILD)) |
| 91 | + |
| 92 | +STRIP_RELEASE = strip |
| 93 | +STRIP_DEBUG = true |
| 94 | +STRIP_MEMDEBUG = $(STRIP_DEBUG) |
| 95 | +STRIP_PROFILE = $(STRIP_DEBUG) |
| 96 | +STRIP = $(STRIP_$(BUILD)) |
| 97 | + |
| 98 | +##### Commands to run tclsh and wish. |
| 99 | +# |
| 100 | +TCLSH = $(TCL)/bin/tclsh$(TCLVERSION) |
| 101 | +WISH = $(TCL)/bin/wish$(TCLVERSION) |
| 102 | + |
| 103 | +##### Installation directories used by the 'install' target. |
| 104 | +# |
| 105 | +INSTALLDIR = $(TCL)/lib/Tkhtml3.0 |
| 106 | +MANINSTALLDIR = $(TCL)/man/mann |
| 107 | + |
| 108 | +# |
| 109 | +# End of configuration section. |
| 110 | +# You should not need to change anything below this line |
| 111 | +########################################################################### |
| 112 | + |
| 113 | +default: binaries hwish |
| 114 | + |
| 115 | +install: binaries |
| 116 | + mkdir -p $(INSTALLDIR) |
| 117 | + mkdir -p $(MANINSTALLDIR) |
| 118 | + cp -f $(BINARIES) $(INSTALLDIR) |
| 119 | + |
| 120 | +hv3-linux-x86: hv3_img.kit |
| 121 | + cp $(STARKITRT) starkit_runtime |
| 122 | + $(MKSTARKIT) hv3_img.bin -runtime ./starkit_runtime |
| 123 | + mv hv3_img.bin hv3-linux-x86 |
| 124 | + |
| 125 | +hv3-linux-x86.gz: hv3-linux-x86 |
| 126 | + gzip hv3-linux-x86 |
| 127 | + chmod 644 hv3-linux-x86.gz |
| 128 | + |
| 129 | +############################################################################### |
| 130 | +include $(TOP)/main.mk |
0 commit comments