# Makefile
ACCESS_TCPIP := TCPIP
ACCESS_NOTA := NOTA
ACCESS_PROTO := $(ACCESS_TCPIP)

THREADS := -pthread
EXPAT_AND_SCEW := -L/usr/local/lib -lscew  -lexpat
INCLUDES := -I/usr/local/include -I/usr/local/include/scew -I/home/vanag/mag/subversion/Projects/SmartSlog/trunk/smartslog_kp_library/src -I/home/vanag/mag/subversion/Projects/SmartSlog/trunk/smartslog_kp_library/src/kpi_low
LIBS := $(THREADS)  $(EXPAT_AND_SCEW)

PETRSU_KP_LIB_PATH := ./
KPI_LOW_PATH := $(PETRSU_KP_LIB_PATH)/kpi_low

CC     = gcc
DEBUG := -g
  CFLAGS = -Wall -c $(DEBUG) $(THREADS) -DACCESS_TCPIP -DTHREADS -DEXPAT_AND_SCEW $(INCLUDES)
  LFLAGS = -Wall $(DEBUG) $(THREADS)
PROGRAM_NAME = kp_lib

targets = main

pkg_packages := scew

# cc -Wall -W  `pkg-config --cflags --libs glib-2.0 pkg-config --cflags --libs gobject-2.0` repository.c  -o repository

kp_low_o_files := $(KPI_LOW_PATH)/kpi_low.o \
		$(KPI_LOW_PATH)/compose_ssap_msg.o \
		$(KPI_LOW_PATH)/process_ssap_cnf.o \
		$(KPI_LOW_PATH)/sib_access_tcp.o \
		$(KPI_LOW_PATH)/parse_ssap_msg.o \
		$(KPI_LOW_PATH)/sskp_errno.o

files 	:=  test kp_error

kp_low_o_files := kpi_low/kpi_low.o kpi_low/compose_ssap_msg.o \
		kpi_low/process_ssap_cnf.o kpi_low/sib_access_tcp.o \
		kpi_low/parse_ssap_msg.o kpi_low/sskp_errno.o

o_files :=  test_ss.o ss_func.o classes.o kpi_interface.o ss_classes.o structures.o properties.o ss_properties.o ss_populate.o \
		utils/kp_error.o utils/check_func.o utils/util_func.o utils/list.o /home/vanag/mag/subversion/demos/Drinkers/simple/SmartSlog_lib/drinkers.o \
		$(kp_low_o_files)




PKG_CFLAGS  := $(shell pkg-config --cflags $(pkg_packages))
PKG_LDFLAGS := $(shell pkg-config --libs $(pkg_packages))


.PHONY: all
all : $(targets)

main: $(o_files)
	$(CC)  $(LFLAGS) $(o_files) $(LIBS) -o $(PROGRAM_NAME)

.c.o:
	echo $(o_files)
	$(CC) $(CFLAGS) $(PKG_CFLAGS) $(LFLAGS)   -o $@ $<

utils/.c.o:
	$(CC) $(CFLAGS) $(PKG_CFLAGS) $(LFLAGS)  -o $@ $<

kpi_low/.c.o:
	$(CC)  $(CFLAGS)   -o $@ $<




#kpi_low/kpi_low.o : kpi_low/kpi_low.h kpi_low/process_ssap_cnf.h kpi_low/compose_ssap_msg.h \
#		kpi_low/sib_access_tcp.h kpi_low/sib_access_nota.h kpi_low/sskp_errno.h kpi_low/kpi_low.c
#	$(CC) $(CFLAGS) $(PKG_CFLAGS) kpi_low/kpi_low.c -o kpi_low/kpi_low.o
#
#kpi_low/compose_ssap_msg.o : kpi_low/compose_ssap_msg.h kpi_low/kpi_low.h kpi_low/compose_ssap_msg.c
#	$(CC) $(CFLAGS) $(PKG_CFLAGS) kpi_low/compose_ssap_msg.c -o kpi_low/compose_ssap_msg.o

#kpi_low/process_ssap_cnf.o : kpi_low/process_ssap_cnf.h kpi_low/parse_ssap_msg.h kpi_low/process_ssap_cnf.c
#	$(CC) $(CFLAGS) $(PKG_CFLAGS) kpi_low/process_ssap_cnf.c -o kpi_low/process_ssap_cnf.o

#kpi_low/parse_ssap_msg.o : kpi_low/parse_ssap_msg.h kpi_low/parse_ssap_msg.c
#	$(CC) $(CFLAGS) $(PKG_CFLAGS) kpi_low/parse_ssap_msg.c -o kpi_low/parse_ssap_msg.o

#kpi_low/sskp_errno.o : kpi_low/sskp_errno.h kpi_low/sskp_errno.c
#	$(CC) $(CFLAGS) $(PKG_CFLAGS) kpi_low/sskp_errno.c -o kpi_low/sskp_errno.o

#kpi_low/sib_access_tcp.o :kpi_low/sib_access_tcp.h kpi_low/sib_access_tcp.c
#	$(CC) $(CFLAGS) $(PKG_CFLAGS) kpi_low/sib_access_tcp.c -o kpi_low/sib_access_tcp.o




#kpi_low/kpi_low.o : kpi_low/kpi_low.h kpi_low/process_ssap_cnf.h kpi_low/compose_ssap_msg.h \
#		kpi_low/sib_access_tcp.h kpi_low/sib_access_nota.h kpi_low/sskp_errno.h kpi_low/kpi_low.c
#	$(CC) $(CFLAGS) $(PKG_CFLAGS) kpi_low/kpi_low.c -o kpi_low/kpi_low.o
#
#kpi_low/compose_ssap_msg.o : kpi_low/compose_ssap_msg.h kpi_low/kpi_low.h kpi_low/compose_ssap_msg.c
#	$(CC) $(CFLAGS) $(PKG_CFLAGS) kpi_low/compose_ssap_msg.c -o kpi_low/compose_ssap_msg.o

#kpi_low/process_ssap_cnf.o : kpi_low/process_ssap_cnf.h kpi_low/parse_ssap_msg.h kpi_low/process_ssap_cnf.c
#	$(CC) $(CFLAGS) $(PKG_CFLAGS) kpi_low/process_ssap_cnf.c -o kpi_low/process_ssap_cnf.o

#kpi_low/parse_ssap_msg.o : kpi_low/parse_ssap_msg.h kpi_low/parse_ssap_msg.c
#	$(CC) $(CFLAGS) $(PKG_CFLAGS) kpi_low/parse_ssap_msg.c -o kpi_low/parse_ssap_msg.o

#kpi_low/sskp_errno.o : kpi_low/sskp_errno.h kpi_low/sskp_errno.c
#	$(CC) $(CFLAGS) $(PKG_CFLAGS) kpi_low/sskp_errno.c -o kpi_low/sskp_errno.o

#kpi_low/sib_access_tcp.o :kpi_low/sib_access_tcp.h kpi_low/sib_access_tcp.c
#	$(CC) $(CFLAGS) $(PKG_CFLAGS) kpi_low/sib_access_tcp.c -o kpi_low/sib_access_tcp.o



#kpi_low/sib_access_tcp.o :kpi_low/sib_access_tcp.h kpi_low/sib_access_tcp.c
#	$(CC) $(PKG_CFLAGS) sib_access_tcp.c


#		utils/kp_error.c -o utils/kp_error.o


#kpi_low/sib_access_tcp.o: kpi_low/sib_access_tcp.h kpi_low/sib_access_tcp.c
#	$(CC) $(CFLAGS) kpi_low/sib_access_tcp.c

#utils/list.o:
#	$(CC) $(CFLAGS) $(PKG_CFLAGS)   utils/list.c  -o utils/list.o

.PHONY: clean
clean:
	rm -f $(o_files) $(kp_low_o_files)
	rm -f $(targets) *.o
	rm -f $(PROGRAM_NAME)
