|  | # | 
|  | # 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 |