chiark / gitweb /
Finalise 1.1.2
[chiark-tcl.git] / base / common.make
1 # base code for various Tcl extensions
2 # Copyright 2006-2012 Ian Jackson
3 #
4 # This program is free software; you can redistribute it and/or
5 # modify it under the terms of the GNU General Public License as
6 # published by the Free Software Foundation; either version 2 of the
7 # License, or (at your option) any later version.
8 #
9 # This program is distributed in the hope that it will be useful, but
10 # WITHOUT ANY WARRANTY; without even the implied warranty of
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12 # General Public License for more details.
13 #
14 # You should have received a copy of the GNU General Public License
15 # along with this library; if not, see <http://www.gnu.org/licenses/>.
16
17
18 VERSION ?=      1
19 FAMILY ?=       chiark_tcl
20 TCL_VERSION ?=  8.4
21 TCL_INCLUDEDIR ?= /usr/include/tcl$(TCL_VERSION)
22
23 OPTIMISE ?=             -O2
24 TCL_MEM_DEBUG ?=        -DTCL_MEM_DEBUG
25
26 TCMDIFGEN ?=    $(BASE_DIR)/tcmdifgen
27 BASE_TCT ?=     $(BASE_DIR)/base.tct
28 BASE_SHLIB ?=   lib$(FAMILY)-$(VERSION)
29
30 CFLAGS +=       -g -Wall -Wmissing-prototypes -Wstrict-prototypes -Werror \
31                 $(OPTIMISE)
32
33 ifeq ($(shell $(CC) -Wno-pointer-sign -E -x c /dev/null >/dev/null || echo x),)
34 CFLAGS +=       -Wno-pointer-sign
35 endif
36
37 ifeq ($(shell $(CC) -fno-strict-aliasing -E -x c /dev/null >/dev/null || echo x),)
38 CFLAGS +=       -fno-strict-aliasing
39 endif
40
41 CPPFLAGS +=     -I$(TCL_INCLUDEDIR) -I$(BASE_DIR)
42 CPPFLAGS +=     $(TCL_MEM_DEBUG)
43
44 AUTOS +=        $(AUTO_SRCS) $(AUTO_HDRS)
45
46 default:        all
47