# ========================================== # Unity Project - A Test Framework for C # Copyright (c) 2007 Mike Karlesky, Mark VanderVoord, Greg Williams # [Released under MIT License. Please refer to license.txt for details] # ========================================== #We try to detect the OS we are running on, and adjust commands as needed ifeq ($(OSTYPE),cygwin) CLEANUP = rm -f MKDIR = mkdir -p TARGET_EXTENSION=.out else ifeq ($(OS),Windows_NT) CLEANUP = del /F /Q MKDIR = mkdir TARGET_EXTENSION=.exe else CLEANUP = rm -f MKDIR = mkdir -p TARGET_EXTENSION=.out endif UNITY_ROOT=../.. C_COMPILER=gcc CFLAGS=-std=c99 CFLAGS += -Wall CFLAGS += -Wextra CFLAGS += -Werror CFLAGS += -Wpointer-arith CFLAGS += -Wcast-align CFLAGS += -Wwrite-strings CFLAGS += -Wswitch-default CFLAGS += -Wunreachable-code CFLAGS += -Winit-self CFLAGS += -Wlogical-op CFLAGS += -Wmissing-field-initializers CFLAGS += -Wno-unknown-pragmas CFLAGS += -Wjump-misses-init CFLAGS += -Wstrict-prototypes CFLAGS += -Wundef CFLAGS += -Wunsafe-loop-optimizations CFLAGS += -Wold-style-definition TARGET_BASE1=test1 TARGET_BASE2=test2 TARGET1 = $(TARGET_BASE1)$(TARGET_EXTENSION) TARGET2 = $(TARGET_BASE2)$(TARGET_EXTENSION) SRC_FILES1=$(UNITY_ROOT)/src/unity.c src/ProductionCode.c test/TestProductionCode.c test/no_ruby/TestProductionCode_Runner.c SRC_FILES2=$(UNITY_ROOT)/src/unity.c src/ProductionCode2.c test/TestProductionCode2.c test/no_ruby/TestProductionCode2_Runner.c INC_DIRS=-Isrc -I$(UNITY_ROOT)/src SYMBOLS=-DTEST all: clean default default: # ruby auto/generate_test_runner.rb test/TestProductionCode.c test/no_ruby/TestProductionCode_Runner.c # ruby auto/generate_test_runner.rb test/TestProductionCode2.c test/no_ruby/TestProductionCode2_Runner.c $(C_COMPILER) $(CFLAGS) $(INC_DIRS) $(SYMBOLS) $(SRC_FILES1) -o $(TARGET1) $(C_COMPILER) $(CFLAGS) $(INC_DIRS) $(SYMBOLS) $(SRC_FILES2) -o $(TARGET2) ./$(TARGET1) ./$(TARGET2) clean: $(CLEANUP)