1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
|
# Makefile to build loader 'tclpd' for Pure Data.
# Needs Makefile.pdlibbuilder as helper makefile for platform-dependent build
# settings and rules.
# library name
lib.name = tclpd
cflags = -std=c99
ldlibs =
###########################################################
# Tcl stuff
PKG_CONFIG = pkg-config
TCL_CFLAGS=$(shell $(PKG_CONFIG) --cflags tcl)
TCL_LIBS=$(shell $(PKG_CONFIG) --libs tcl)
## Dawrin
# TCL_CFLAGS = -I/Library/Frameworks/Tcl.framework/Headers
# TCL_LIBS = -framework Tcl
## MSW
# TCL_CFLAGS =
# TCL_LIBS = -ltcl86 tclpd.def
cflags += -DHASHTABLE_COPY_KEYS $(TCL_CFLAGS)
ldlibs += $(TCL_LIBS)
#
###########################################################
# input source file (class name == source file basename)
tclpd.class.sources = tclpd.c
tclpd.class.sources += \
hashtable.c \
tcl_class.c \
tcl_loader.c \
tcl_proxyinlet.c \
tcl_typemap.c \
tcl_widgetbehavior.c \
$(empty)
tclpd.class.sources += tcl_wrap.c
# all extra files to be included in binary distribution of the library
datafiles = \
LICENSE.txt \
README.txt \
tclpd.tcl \
tclpd-help.pd \
tclpd-meta.pd
datadirs = examples
# include Makefile.pdlibbuilder from submodule directory 'pd-lib-builder'
PDLIBBUILDER_DIR=pd-lib-builder/
include $(PDLIBBUILDER_DIR)/Makefile.pdlibbuilder
# create the tcl wrapper with 'swig'
tcl_wrap.c: tclpd.i tclpd.h Makefile
swig -v -tcl -o tcl_wrap.c -I$(PDINCLUDEDIR) tclpd.i
clean-local:
rm -f tcl_wrap.c
clean: clean-local
|