# flext tutorial examples # # Makefile for gcc @ linux # # usage: make -f makefile.pd-linux # # ----------------------------------------------------- include config-pd-linux.txt FLEXTLIB=$(FLEXTPATH)/flext_t.a # take threaded library for all # compiler+linker stuff ### EDIT! ### INCLUDES=$(PDPATH)/src LIBPATH= FLAGS=-DFLEXT_SYS=2 -DFLEXT_THREADS CFLAGS=-O6 -mcpu=pentiumpro LIBS=m # the rest can stay untouched # ---------------------------------------------- # all the source files from the package EXAMPLES=simple1 simple2 simple3 adv1 adv2 adv3 attr1 attr2 attr3 sndobj1~ signal1~ signal2~ lib1 thread1 thread2 TARGETS=$(patsubst %,$(OUTPATH)/%.pd_linux,$(EXAMPLES)) # default target all: $(OUTPATH) $(TARGETS) $(OUTPATH)/%~.pd_linux : $(OUTPATH)/%.pd_linux mv $^ $@ $(SRCS): $(HDRS) touch $@ $(OUTPATH): mkdir $(OUTPATH) $(OUTPATH)/%.o : %/main.cpp $(CXX) -c $(CFLAGS) $(FLAGS) $(patsubst %,-I%,$(INCLUDES) $(FLEXTPATH)) $< -o $@ $(OUTPATH)/%.pd_linux : $(OUTPATH)/%.o $(FLEXTLIB) $(CXX) $(LDFLAGS) -shared $(patsubst %,-L%,$(LIBPATH)) $^ $(patsubst %,-l%,$(LIBS)) -o $@ chmod 755 $@ .PHONY: clean clean: rm -f $(OUTPATH)/*.o $(TARGETS) ifdef INSTPATH $(INSTPATH): -mkdir $(INSTPATH) install:: $(INSTPATH) endif install:: $(patsubst %,$(OUTPATH)/%.pd_linux,$(EXAMPLES)) cp $^ $(INSTPATH) chmod 755 $(patsubst %,$(INSTPATH)/%,$(notdir $^)) chown root.users $(patsubst %,$(INSTPATH)/%,$(notdir $^))