# ------------------------------------------------- # adjust the next 2 pathes to your system: # this should point to the directory which contains # m_pd.h and g_canvas.h PDSCR=c:/pd/src # this is the pd directory, here the files will be # installed PDPATH=c:/pd # -------------------------------------------------- TARGET=threadlib.dll OBJ=fifo.o callbacks.o threadlib.o \ sleep.o detach.o join.o CC = gcc LD = gcc INCLUDE = -I$(PDSCR) -I. LIB = $(PDPATH)/bin/pd.dll \ c:/windows/system/pthreadGC.dll CC_FLAGS = -DPD -DMSW -c -mms-bitfields \ -Wall -Wno-parentheses -Wno-switch -O3 \ -funroll-loops -fomit-frame-pointer LD_FLAGS = --export-dynamic -shared -o # -------------------------------------------------- all: dll dll: $(TARGET) $(TARGET): $(OBJ) $(LD) $(LD_FLAGS) $(TARGET) $(OBJ) $(LIB) strip --strip-unneeded $(TARGET) chmod 755 $(TARGET) threadlib.o: threadlib.h threadlib.c $(CC) $(CC_FLAGS) $(INCLUDE) threadlib.c fifo.o: threadlib.o fifo.c $(CC) $(CC_FLAGS) $(INCLUDE) fifo.c callbacks.o: fifo.o threadlib.o callbacks.c $(CC) $(CC_FLAGS) $(INCLUDE) callbacks.c sleep.o: threadlib.o sleep.c $(CC) $(CC_FLAGS) $(INCLUDE) sleep.c detach.o: threadlib.o fifo.o detach.c $(CC) $(CC_FLAGS) $(INCLUDE) detach.c join.o: threadlib.o callbacks.o join.c $(CC) $(CC_FLAGS) $(INCLUDE) join.c # -------------------------------------------------- clean: rm -f $(OBJ) $(TARGET) install: @test -d $(PDPATH)/extra || mkdir -p $(PDPATH)/extra install $(TARGET) $(PDPATH)/extra install ../doc/*.pd $(PDPATH)/doc/5.reference