# please use GNU MAKE
export SHELLOPTS := igncr


NAME    = simpci
OF      = build
VPATH   = . ..
CC      = gcc
COPT    = -Wall
LOPT    =


ifneq ($(findstring .exe,$(SHELL))$(findstring .EXE,$(SHELL)),)
  ENV_NAME := WINDOWS
  PATH+=;C:\MinGW\bin;C:\MinGW\msys\1.0\bin
  SHELL := C:\MinGW\msys\1.0\bin\bash.exe
else
  ENV_NAME := $(shell uname -s)
endif
$(info $(ENV_NAME))

ifneq ($(findstring CYGWIN,$(ENV_NAME))$(findstring MINGW,$(ENV_NAME))$(findstring WINDOWS,$(ENV_NAME)),)
  BIN  = $(NAME).dll
  LOPT += -def ../simul.def -s
  ifneq ($(findstring CYGWIN,$(ENV_NAME)),)
    COPT  += -mno-cygwin
  endif
else
  BIN  = $(NAME).so.1
endif


.PHONY : all
all: $(OF) $(OF)/$(BIN)
	cp $(OF)/$(BIN) $(BIN)

$(OF):
	mkdir $@

$(OF)/%.o: %.c simul.h
	$(CC) $(addprefix -I,$(VPATH)) -c $(COPT) -o $@ $<

$(OF)/$(BIN): $(OF)/$(NAME).o $(OF)/simul.o
	$(CC) -shared $^ $(LOPT) -o $@

.PHONY : clean
clean:
	rm -rf $(OF)

