Files
openairinterface5g/openair-cn/S1AP/Makefile.eNB
T
Cedric Roux d5a12e3b79 - Moved Makerules to OPENAIR_TARGETS
- Created Makefile.common that gathers common definitions for oaisim and lte-softmodem
- Added ITTI capabilities to lte-softmodem (currently not stable)
	* Created dummy l2l1 task
	* Added -K option to output itti messages to file (some RT issues with file flush)
- Added S1AP/SCTP tasks in lte-softmodem

pre-ci ok
lte-softmodem with HARD_RT=1 build ok

git-svn-id: http://svn.eurecom.fr/openair4G/trunk@4514 818b1a75-f10b-46b9-bf7c-635c3b92a50f
2013-11-25 16:49:27 +00:00

130 lines
4.4 KiB
Makefile

# include $(OPENAIR_TARGETS)/SIMU/USER/Makerules
OUTDIR = $(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_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))
ifeq ($(USE_MME), R10)
libs1ap_OBJECTS += $(addprefix MESSAGES/, $(S1AP_ASN_MODULE_SOURCES_R9))
libs1ap_OBJECTS += $(addprefix MESSAGES/, $(S1AP_ASN_MODULE_SOURCES_R10))
else
ifeq ($(USE_MME), R9)
libs1ap_OBJECTS += $(addprefix MESSAGES/, $(S1AP_ASN_MODULE_SOURCES_R9))
endif
endif
# pull in dependency info for *existing* .o files
-include $(OUTDIR)/*.d
CFLAGS = \
-Wall \
-DENB_MODE \
-DENABLE_USE_MME \
-DEMIT_ASN_DEBUG=1 \
-DUSER_MODE \
-I./MESSAGES \
-I$(OUTDIR) \
-I../UTILS \
$(ADD_CFLAGS) \
-DENB_MODE \
$(S1AP_CFLAGS) \
-Wuninitialized \
-Werror=implicit-function-declaration
S1AP_GENERATED = \
$(OUTDIR)/s1ap_encoder.o \
$(OUTDIR)/s1ap_decoder.o \
$(OUTDIR)/s1ap_xer_print.o
$(OUTDIR)/%.o : %.c
@echo "Compiling $<"
@if [ ! -d $(dir $@) ]; then mkdir -p $(dir $@); fi;
@$(CC) -c $(CFLAGS) -o $@ $<
@$(CC) -MM $(CFLAGS) $< > $(basename $@).d
@mv -f $(basename $@).d $(basename $@).d.tmp
@sed -e 's|.*:|$@:|' < $(basename $@).d.tmp > $(basename $@).d
@sed -e 's/.*://' -e 's/\\$$//' < $(basename $@).d.tmp | fmt -1 | \
sed -e 's/^ *//' -e 's/$$/:/' >> $(basename $@).d
@rm -f $(basename $@).d.tmp
$(S1AP_GENERATED): %.o : %.c
@echo "Compiling $<"
@if [ ! -d $(dir $@) ]; then mkdir -p $(dir $@); fi;
@$(CC) -c $(CFLAGS) -o $@ $<
@$(CC) -MM $(CFLAGS) $< > $(basename $@).d
@mv -f $(basename $@).d $(basename $@).d.tmp
@sed -e 's|.*:|$@:|' < $(basename $@).d.tmp > $(basename $@).d
@sed -e 's/.*://' -e 's/\\$$//' < $(basename $@).d.tmp | fmt -1 | \
sed -e 's/^ *//' -e 's/$$/:/' >> $(basename $@).d
@rm -f $(basename $@).d.tmp
$(OUTDIR)/s1ap_ieregen.stamp: $(ASN1DIR)/$(ASN1RELDIR)/S1AP-PDU-Contents.asn $(ASN1DIR)/asn1tostruct.py
@if [ ! -d $(OUTDIR) ]; then mkdir -p $(OUTDIR); fi;
@python $(ASN1DIR)/asn1tostruct.py -f$< -o$(OUTDIR)
@echo Timestamp > $@
$(OUTDIR)/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 > $@
$(OUTDIR)/libs1ap.a: $(OUTDIR)/s1ap_ieregen.stamp $(OUTDIR)/s1ap_asn1regen.stamp $(S1AP_GENERATED) $(addprefix $(OUTDIR)/,$(libs1ap_OBJECTS))
@echo Creating S1AP archive
@$(AR) rcs $@ $(S1AP_GENERATED) $(addprefix $(OUTDIR)/,$(libs1ap_OBJECTS))
clean:
@$(RM_F_V) $(OUTDIR)/*.o
@$(RM_F_V) $(OUTDIR)/*.d
@$(RM_F_V) $(addprefix $(OUTDIR)/MESSAGES/, $(S1AP_ASN_MODULE_SOURCES))
@$(RM_F_V) $(addprefix $(OUTDIR)/MESSAGES/, $(S1AP_ASN_MODULE_SOURCES_R9))
@$(RM_F_V) $(addprefix $(OUTDIR)/MESSAGES/, $(S1AP_ASN_MODULE_SOURCES_R10))
@$(RM_F_V) $(addprefix $(OUTDIR)/MESSAGES/, $(S1AP_ASN_MODULE_SOURCES:.o=.d))
@$(RM_F_V) $(addprefix $(OUTDIR)/MESSAGES/, $(S1AP_ASN_MODULE_SOURCES_R9:.o=.d))
@$(RM_F_V) $(addprefix $(OUTDIR)/MESSAGES/, $(S1AP_ASN_MODULE_SOURCES_R10:.o=.d))
@$(RM_F_V) $(OUTDIR)/libs1ap.a
@$(RM_F_V) $(OUTDIR)/s1ap_asn1regen.stamp
@$(RM_F_V) $(OUTDIR)/s1ap_ieregen.stamp
@$(RM_F_V) $(OUTDIR)/s1ap_decoder.c $(OUTDIR)/s1ap_encoder.c
@$(RM_F_V) $(OUTDIR)/s1ap_xer_print.c $(OUTDIR)/s1ap_ies_defs.h
cleanall: clean
@$(RM_F_V) $(addprefix $(OUTDIR)/MESSAGES/, $(S1AP_ASN_MODULE_SOURCES:.o=.c))
@$(RM_F_V) $(addprefix $(OUTDIR)/MESSAGES/, $(S1AP_ASN_MODULE_SOURCES:.o=.h))
@$(RM_F_V) $(addprefix $(OUTDIR)/MESSAGES/, $(S1AP_ASN_MODULE_SOURCES_R9:.o=.c))
@$(RM_F_V) $(addprefix $(OUTDIR)/MESSAGES/, $(S1AP_ASN_MODULE_SOURCES_R9:.o=.h))
@$(RM_F_V) $(addprefix $(OUTDIR)/MESSAGES/, $(S1AP_ASN_MODULE_SOURCES_R10:.o=.c))
@$(RM_F_V) $(addprefix $(OUTDIR)/MESSAGES/, $(S1AP_ASN_MODULE_SOURCES_R10:.o=.h))
showcflags:
@echo s1ap cflags: $(CFLAGS)