PROGRAM = osc2File
CXX = g++
ENDIANESS=OSC_HOST_LITTLE_ENDIAN
CXX_FLAGS = -g -Wall -D$(ENDIANESS)
OSC_DIR=./oscpack
INCLUDE= -I$(OSC_DIR)
SRC_DIR = src
SRC_FILES= $(SRC_DIR)/oscToFile.cpp $(OSC_DIR)/osc/OscTypes.cpp\
   $(OSC_DIR)/osc/OscReceivedElements.cpp $(OSC_DIR)/osc/OscPrintReceivedElements.cpp\
   $(OSC_DIR)/osc/OscOutboundPacketStream.cpp $(OSC_DIR)/ip/posix/NetworkingUtils.cpp\
   $(OSC_DIR)/ip/posix/UdpSocket.cpp $(OSC_DIR)/ip/IpEndpointName.cpp
 	 
OBJS = $(SRC_FILES:.cpp=.o)

all: $(PROGRAM) $(OBJS)

$(PROGRAM): $(OBJS) 
	$(CXX) $(CXX_FLAGS) $(INCLUDE) -o $(PROGRAM) $(SRC_DIR)/oscToFileMain.cpp $(OBJS)

.cpp.o:    
	$(CXX) -c $(CXX_FLAGS) $(INCLUDE) -o "$@" "$<"


clean:
	-rm $(OBJS)
	
distclean: clean
	-rm $(PROGRAM)
	test -e examples/testOut.dat && rm examples/testOut.dat
