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



PETRSU_KP_LIB_PATH := ./
KPI_LOW_PATH := $(PETRSU_KP_LIB_PATH)/kpi_low
		#/home/legioner/programming/m3-codegenerator/Projects/KPI_Low/trunk/src/

THREADS := -pthread
EXPAT_AND_SCEW := -L/usr/local/lib -lexpat -L/usr/local/lib -lscew
INCLUDES := -I/usr/local/include -I/usr/local/include/scew -I$(KPI_LOW_PATH)
LIBS := $(THREADS)  $(EXPAT_AND_SCEW)


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

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 \


o_files :=   $(PETRSU_KP_LIB_PATH)/kpi_interface.o \
		$(PETRSU_KP_LIB_PATH)/ss_properties.o \
		./test.o \
		$(PETRSU_KP_LIB_PATH)/ss_func.o \
		$(PETRSU_KP_LIB_PATH)/classes.o \
		$(PETRSU_KP_LIB_PATH)/ss_classes.o \
		$(PETRSU_KP_LIB_PATH)/structures.o \
		$(PETRSU_KP_LIB_PATH)/properties.o \
		$(PETRSU_KP_LIB_PATH)/utils/kp_error.o \
		$(PETRSU_KP_LIB_PATH)/utils/check_func.o \
		$(PETRSU_KP_LIB_PATH)/utils/util_func.o \
		$(PETRSU_KP_LIB_PATH)/utils/list.o \
		$(PETRSU_KP_LIB_PATH)/ss_subscribe.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)

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

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

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

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





.PHONY: clean
clean:
	rm -f $(targets) *.o
	rm $(PUB_PROGRAM_NAME)
	rm $(CON_PROGRAM_NAME)
