# $Id: Makefile 20134 2012-04-03 16:08:59Z foucher $

OS_ARCH := $(subst /,_,$(shell uname -s))
ifeq ($(OS_ARCH),Linux)
  ARCH = linux
  ifeq ($(origin GTX_ARCH), undefined)
    GCC_VERSION=$(shell gcc_version=`LANG=C gcc -v 2>&1 | sed -n 's/^gcc version \(.\).\(.\).*/\1\2/p'`; if [ $$gcc_version -gt 41 ]; then gcc_version=41; fi; echo $$gcc_version)
    COMPILER=gcc$(GCC_VERSION)
    ifeq ($(shell uname -a | grep x86_64 | wc -l | sed -e "s/ //g"),1)
      GTX_ARCH = linux64-$(COMPILER)
    else
      GTX_ARCH = linux-$(COMPILER)
    endif
  endif
endif

CC_solaris      = cc
CCFLAGS_solaris = -Xc -Kpic -c
AUXLIBS_solaris = -ldl -lsocket -lnsl
LDFLAGS_solaris = -G -o
RM_solaris      = rm -f

CC_linux        = gcc
CCFLAGS_linux   = -ansi -Wall -m32
AUXLIBS_linux   = -ldl -lsocket -lnsl
LDFLAGS_linux   = -shared -o
RM_linux        = rm -f

TARGET=S_gtxclient.so

GTX_CLIENT_LIB_PATH = ../../lib/$(ARCH)
GTX_CLIENT_LIBS     = 
GTX_CLIENT_LIB_LIBS = $(GTX_CLIENT_LIBS:%=-l%)
GTX_CLIENT_LIB_DEP  = $(GTX_CLIENT_LIBS:%=$(GTX_CLIENT_LIB_PATH)/lib%.so)
GTX_CLIENT_INCLUDE  = -I../../include

FILES   = S_gtxclient.c
OBJECTS = $(FILES:.c=.o)

all: $(TARGET)

.c.o:
	@echo "Compiling $@"
	@$(CC_$(ARCH)) $(CCFLAGS_$(ARCH)) $< $(GTX_CLIENT_INCLUDE)

$(TARGET): $(OBJECTS) $(GTX_CLIENT_LIB_DEP)
	@echo "Making library $@"
	@$(CC_$(ARCH)) $(LDFLAGS_$(ARCH)) $@ $(OBJECTS) \
	-L$(GTX_CLIENT_LIB_PATH) $(GTX_CLIENT_LIB_LIBS) $(AUXLIBS_$(ARCH))

clean:
	@$(RM) $(OBJECTS)
