include $(OPENAIR_TARGETS)/SIMU/USER/Makerules S1AP_OBJDIR = $(S1AP_DIR)/enb_objs ASN1MESSAGESDIR=$(S1AP_DIR)/MESSAGES ASN1DIR=$(ASN1MESSAGESDIR)/ASN1 ifeq ($(USE_MME), R10) ASN1RELDIR=R10.5 UPDATE_RELEASE_9=1 UPDATE_RELEASE_10=1 ADD_CFLAGS=-DUPDATE_RELEASE_9 -DUPDATE_RELEASE_10 else ifeq ($(USE_MME), R9) UPDATE_RELEASE_9=1 ASN1RELDIR=R9.8 ADD_CFLAGS=-DUPDATE_RELEASE_9 else ASN1RELDIR=R8.10 endif endif include $(ASN1MESSAGESDIR)/Makefile.inc libs1ap_OBJECTS = \ s1ap_eNB.o s1ap_common.o \ $(S1AP_OBJDIR)/s1ap_encoder.o \ $(S1AP_OBJDIR)/s1ap_decoder.o \ $(S1AP_OBJDIR)/s1ap_xer_print.o \ s1ap_eNB_itti_messaging.o \ s1ap_eNB_decoder.o \ s1ap_eNB_encoder.o \ s1ap_eNB_handlers.o \ s1ap_eNB_nnsf.o s1ap_eNB_ue_context.o \ s1ap_eNB_trace.o s1ap_eNB_overload.o \ s1ap_eNB_nas_procedures.o \ s1ap_eNB_management_procedures.o \ $(addprefix MESSAGES/, $(S1AP_ASN_MODULE_SOURCES)) # pull in dependency info for *existing* .o files -include *.d CFLAGS = \ -DENB_MODE \ -DENABLE_USE_MME \ -DEMIT_ASN_DEBUG=1 \ -DUSER_MODE \ -I./MESSAGES \ -I$(S1AP_OBJDIR) \ -I../UTILS \ $(ADD_CFLAGS) \ -DENB_MODE \ $(S1AP_CFLAGS) \ -Werror=implicit-function-declaration $(libs1ap_OBJECTS): %.o : %.c @echo "Compiling $<" @$(CC) -c $(CFLAGS) -o $@ $< @$(CC) -MM $(CFLAGS) $*.c > $*.d @mv -f $*.d $*.d.tmp @sed -e 's|.*:|$*.o:|' < $*.d.tmp > $*.d @sed -e 's/.*://' -e 's/\\$$//' < $*.d.tmp | fmt -1 | \ sed -e 's/^ *//' -e 's/$$/:/' >> $*.d @rm -f $*.d.tmp $(S1AP_OBJDIR)/s1ap_ieregen.stamp: $(ASN1DIR)/$(ASN1RELDIR)/S1AP-PDU-Contents.asn $(ASN1DIR)/asn1tostruct.py mkdir -p $(S1AP_OBJDIR) python $(ASN1DIR)/asn1tostruct.py -f$< -o$(S1AP_OBJDIR) echo Timestamp > $@ $(S1AP_OBJDIR)/s1ap_asn1regen.stamp: $(ASN1DIR)/$(ASN1RELDIR)/S1AP-CommonDataTypes.asn \ $(ASN1DIR)/$(ASN1RELDIR)/S1AP-Constants.asn $(ASN1DIR)/$(ASN1RELDIR)/S1AP-IEs.asn $(ASN1DIR)/$(ASN1RELDIR)/S1AP-PDU.asn (cd $(ASN1MESSAGESDIR) && asn1c -fhave_native64 -gen-PER $^) echo Timestamp > $@ .INTERMEDIATE = $(S1AP_OBJDIR)/s1ap_ieregen.stamp $(S1AP_OBJDIR)/s1ap_asn1regen.stamp libs1ap.a: $(S1AP_OBJDIR)/s1ap_ieregen.stamp $(S1AP_OBJDIR)/s1ap_asn1regen.stamp $(libs1ap_OBJECTS) @echo Creating S1AP archive @$(AR) rcs $@ $(libs1ap_OBJECTS) clean: @$(RM_F_V) $(libs1ap_OBJECTS) @$(RM_F_V) .*.d @$(RM_F_V) $(addprefix MESSAGES/, $(S1AP_ASN_MODULE_SOURCES)) @$(RM_F_V) $(addprefix MESSAGES/, $(S1AP_ASN_MODULE_SOURCES:.o=.d)) @$(RM_F_V) libs1ap.a @$(RM_F_V) $(S1AP_OBJDIR)/s1ap_asn1regen.stamp @$(RM_F_V) $(S1AP_OBJDIR)/s1ap_ieregen.stamp @$(RM_F_V) $(S1AP_OBJDIR)/s1ap_decoder.c $(S1AP_OBJDIR)/s1ap_encoder.c @$(RM_F_V) $(S1AP_OBJDIR)/s1ap_xer_print.c $(S1AP_OBJDIR)/s1ap_ies_defs.h cleanall: clean @$(RM_F_V) $(addprefix MESSAGES/, $(S1AP_ASN_MODULE_SOURCES:.o=.c)) @$(RM_F_V) $(addprefix MESSAGES/, $(S1AP_ASN_MODULE_SOURCES:.o=.h)) showcflags: @echo s1ap cflags: $(CFLAGS)