PREBUILD_DIR=$(shell pwd)/../3rdparty/prebuild/$(BUILD_TARGET)
MAINSRC_DIR=$(shell pwd)/../src

CXXFLAGS2 += -Wall -O0 -g3 -I../src/include -I${MAINSRC_DIR} \
           -I${PREBUILD_DIR} \
	   -I$(PREBUILD_DIR)/ffmpeg/include \
	   -I$(PREBUILD_DIR)/faad2/include/include \
	   -I$(PREBUILD_DIR)/live555/include/liveMedia -I$(PREBUILD_DIR)/live555/include/UsageEnvironment \
	   -I$(PREBUILD_DIR)/live555/include/groupsock -I$(PREBUILD_DIR)/live555/include/BasicUsageEnvironment \
           -I$(PREBUILD_DIR)/ace/include -I$(PREBUILD_DIR)/curl/include -I$(PREBUILD_DIR)/curl/include -I$(PREBUILD_DIR)/openssl/include \
	   -I$(PREBUILD_DIR)/libxml2/include -I/usr/include/libxml2

# LDFLAGS= -L../lib/$(BUILD_TARGET) \
#         $(PREBUILD_DIR)/curl/lib/libcurl.a \
#         $(PREBUILD_DIR)/openssl/lib/libssl.a $(PREBUILD_DIR)/openssl/lib/libcrypto.a $(PREBUILD_DIR)/ace/lib/libACE.a -lVNMediaClient

LDFLAGS= -L../lib/$(BUILD_TARGET) \
         $(PREBUILD_DIR)/curl/lib/libcurl.a \
-lVNMediaClient



# linking with native libxml2 where it needed (linux/darwin)
ifneq (,$(filter  $(BUILD_TARGET), arm-android i386-mingw32 x86_64-mingw32 arm-mingw32ce))
LDFLAGS+=
else
LDFLAGS+=-lz -lbz2 -lxml2
endif

ifeq (i386-linux, $(BUILD_TARGET))
LDFLAGS+=-lva -lpthread
endif

ifeq (i386-mingw32, $(BUILD_TARGET))
LDFLAGS+=-lws2_32 -lole32 -lgdi32
endif

ifeq (x86_64-mingw32, $(BUILD_TARGET))
LDFLAGS+=-lws2_32 -lole32 -lgdi32
endif

ifeq (darwin, $(findstring darwin,$(BUILD_TARGET)))
LDFLAGS+=-lz -lxml2 -lbz2 -framework CoreFoundation -framework VideoDecodeAcceleration -framework CoreVideo
endif

# stupid anroid toolchains..
ifeq (android, $(findstring android,$(BUILD_TARGET)))
OLD_LDFLAGS:=$(LDFLAGS)
LDFLAGS=-L$(NDK_PATH)/sources/cxx-stl/gnu-libstdc++/libs/armeabi -lstdc++ $(OLD_LDFLAGS) -lstdc++ -lgcc
endif       

ifeq (mingw32, $(findstring mingw32,$(BUILD_TARGET)))
EXE=.exe                                                                         
endif       

all: curl_test  curl_test_ori respool_test client_test json_test

.cpp.o:
	$(CXX) -c $(CXXFLAGS) $(CXXFLAGS2) $<


curl_test: curl_test.o ../lib/$(BUILD_TARGET)/libVNMediaClient.a
	$(CXX) -o curl_test$(EXE) curl_test.o $(LDFLAGS)

curl_multi_test: curl_test_multi.o ../lib/$(BUILD_TARGET)/libVNMediaClient.a
	$(CXX) -o curl_test_multi$(EXE) curl_test_multi.o $(LDFLAGS)

curl_test_ori: curl_test_ori.o ../lib/$(BUILD_TARGET)/libVNMediaClient.a
	$(CXX) -o curl_test_ori$(EXE) curl_test_ori.o $(LDFLAGS)

respool_test: respool_test.o ../lib/$(BUILD_TARGET)/libVNMediaClient.a
	$(CXX) -o respool_test$(EXE) respool_test.o $(LDFLAGS)

client_test: client_test.o ../lib/$(BUILD_TARGET)/libVNMediaClient.a
	$(CXX) -o client_test$(EXE) client_test.o $(LDFLAGS)

json_test: json_test.o ../lib/$(BUILD_TARGET)/libVNMediaClient.a
	$(CXX) -o json_test$(EXE) json_test.o $(LDFLAGS)

clean:
	rm -rf *.o curl_test$(EXE) curl_test_multi$(EXE) curl_test_ori$(EXE) respool_test$(EXE) client_test$(EXE) json_test$(EXE)




# #  $Id$
# # -----------------------------------------------------------------------------
# #  The part of 'VideoNEXT MediaClient SDK'
# # -----------------------------------------------------------------------------
# #  Author: Petrov Maxim, 03/04/2009
# #  Edited by:
# #  QA by:
# #  Copyright: videoNEXT LLC
# # -----------------------------------------------------------------------------

# CXXFLAGS+= -Wall -O3 -g -I../../include

# LDFLAGS+= -L../../lib/$(BUILD_TARGET) -lVNMediaClient -lz -lxml2
# LDFLAGS_FFMPEG:= $(LDFLAGS) -L../libs/ffmpeg/lib -L../libs/x264/lib -L../libs/libfaad2/libfaad \
#                             -lavcodec-$(BUILD_TARGET) -lavutil-$(BUILD_TARGET) -lswscale-$(BUILD_TARGET) -lfaad-$(BUILD_TARGET) -lx264-$(BUILD_TARGET) -lz

# all: test_ffmpeg 

# .cpp.o:
# 	$(CXX) -c $(CXXFLAGS) $<

# .m.o:
# 	$(CXX) -c $(CFLAGS) -I../libs/ffmpeg/libavcodec -I../libs/ffmpeg/libavutil -I../libs/ffmpeg/libswscale -I../libs/ffmpeg $<

# test_ffmpeg: test_ffmpeg.o
# 	$(CXX) $(LDFLAGS_FFMPEG) -o test_ffmpeg test_ffmpeg.o
# clean:
# 	rm -rf *.o
