#
# Makefile for mfgapi_test.cpp
# $Id: Makefile 382637 2013-02-03 04:34:52Z $
#
#	There are total five options for make:
#
#		make		: This is to make mfgapi_test.exe, wlmSampleTests.exe, and wlm.lib
#		make exe	: This is to make mfgapi_test.exe and wlmSampleTests.exe
#		make lib	: This is to make wlm.lib only
#		make clean	: This is to remove mfgtest_api.exe and wlmSampleTests.exe
#		make cleanall	: This is to remove mfgtest_api.exe, wlmSampleTests.exe, wlm.lib and all of its object files
#
#

UNAME = $(shell uname)

SRCBASE = ../..
WLM_DIR = wl/exe

ifeq ($(findstring CYGWIN,$(UNAME)),CYGWIN)
TARGET_TEST = mfgapi_test.exe
TARGET_SAMPLE = wlmSampleTests.exe
WLM_LIB = wlm.lib
WLM_DLL = wlm.dll
REL_WLM_DIR = $(WLM_DIR)/obj/wlm/free
WLM_MAKE = GNUmakefile.wlm_dll
C_DEFINES += -mno-cygwin -DWIN32
else
TARGET_TEST = mfgapi_test
TARGET_SAMPLE = wlmSampleTests
WLM_LIB = wlm.so
REL_WLM_DIR = $(WLM_DIR)/wlm/x86
WLM_MAKE = GNUmakefile
C_DEFINES += -DLINUX
endif

SOURCE = mfgapi_test.cpp
SOURCE_SAMPLE = wlmSampleTests.c

vpath %.h $(SRCBASE)/$(WLM_DIR)

CC = gcc
CXX = g++

C_DEFINES += -Wall -Wextra -Werror
ANSI_C90 = -ansi -pedantic

INCLUDES = $(SRCBASE)/$(WLM_DIR) $(SRCBASE)/include $(SRCBASE)/common/include
CPPFLAGS = $(patsubst %,-I%,$(subst ;, ,$(INCLUDES)))

all: lib $(TARGET_SAMPLE)

test: lib $(TARGET_TEST)

lib: $(SRCBASE)/$(REL_WLM_DIR)/$(WLM_LIB)

$(TARGET_TEST): $(SOURCE) wlm.h
	@echo "Compiling - $(TARGET_TEST)"
	$(CXX) $(C_DEFINES) $(CPPFLAGS) $(SOURCE) $(SRCBASE)/$(REL_WLM_DIR)/$(WLM_LIB) -o $(TARGET_TEST)

$(SRCBASE)/$(REL_WLM_DIR)/$(WLM_LIB):
ifeq ($(findstring CYGWIN,$(UNAME)),CYGWIN)
	$(MAKE) -C $(SRCBASE)/$(WLM_DIR) OTHER_SOURCES="" debug
	$(MAKE) -C $(SRCBASE)/$(WLM_DIR) -f $(WLM_MAKE)
	cp -f $(SRCBASE)/$(REL_WLM_DIR)/$(WLM_DLL) .
else
	$(MAKE) -C $(SRCBASE)/$(WLM_DIR) -f $(WLM_MAKE) wlm
	cp -f $(SRCBASE)/$(REL_WLM_DIR)/$(WLM_LIB) .
endif

$(TARGET_SAMPLE): $(SOURCE_SAMPLE) wlm.h
	@echo "Compiling - $(TARGET_SAMPLE)"
	$(CC) $(C_DEFINES) $(CPPFLAGS) $(ANSI_C90) $(SOURCE_SAMPLE) $(SRCBASE)/$(REL_WLM_DIR)/$(WLM_LIB) -o $(TARGET_SAMPLE)

clean:
	rm -f $(TARGET_TEST) $(TARGET_SAMPLE)

cleanall:
	rm -f $(TARGET_TEST) $(TARGET_SAMPLE) $(WLM_LIB)
ifeq ($(findstring CYGWIN,$(UNAME)),CYGWIN)
	rm -rf $(SRCBASE)/$(REL_WLM_DIR)
else
	rm -f $(SRCBASE)/$(REL_WLM_DIR)/*.o $(SRCBASE)/$(REL_WLM_DIR)/$(WLM_LIB)
endif

.PHONY : all exe lib clean cleanall
