git-svn-id: http://svn.eurecom.fr/openair4G/trunk@5565 818b1a75-f10b-46b9-bf7c-635c3b92a50f
341 lines
15 KiB
Makefile
341 lines
15 KiB
Makefile
################################################################################
|
|
# OpenAirInterface
|
|
# Copyright(c) 1999 - 2014 Eurecom
|
|
#
|
|
# OpenAirInterface is free software: you can redistribute it and/or modify
|
|
# it under the terms of the GNU General Public License as published by
|
|
# the Free Software Foundation, either version 3 of the License, or
|
|
# (at your option) any later version.
|
|
#
|
|
#
|
|
# OpenAirInterface is distributed in the hope that it will be useful,
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
# GNU General Public License for more details.
|
|
#
|
|
# You should have received a copy of the GNU General Public License
|
|
# along with OpenAirInterface.The full GNU General Public License is
|
|
# included in this distribution in the file called "COPYING". If not,
|
|
# see <http://www.gnu.org/licenses/>.
|
|
#
|
|
# Contact Information
|
|
# OpenAirInterface Admin: openair_admin@eurecom.fr
|
|
# OpenAirInterface Tech : openair_tech@eurecom.fr
|
|
# OpenAirInterface Dev : openair4g-devel@eurecom.fr
|
|
#
|
|
# Address : Eurecom, Compus SophiaTech 450, route des chappes, 06451 Biot, France.
|
|
#
|
|
################################################################################
|
|
PROJDIR = $(UE_NAS_DIR)/EURECOM-NAS
|
|
|
|
include $(UE_NAS_DIR)/EURECOM-NAS/Makefile.inc
|
|
|
|
libnas_INCLUDES = \
|
|
-I$(OPENAIR2_DIR) \
|
|
-I$(UE_NAS_DIR) \
|
|
-I$(SRCDIR) \
|
|
-I$(INCDIR) \
|
|
-I$(UTILDIR) \
|
|
-I$(USERAPIDIR) \
|
|
-I$(NETAPIDIR) \
|
|
-I$(EMMDIR) \
|
|
-I$(EMMMSGDIR) \
|
|
-I$(EMMSAPDIR) \
|
|
-I$(ESMDIR) \
|
|
-I$(ESMMSGDIR) \
|
|
-I$(ESMSAPDIR) \
|
|
-I$(MMEAPIDIR) \
|
|
-I$(USIMAPIDIR) \
|
|
-I$(IESDIR) \
|
|
-I$(SECU_DIR) \
|
|
-I$(OPENAIRCN_DIR)/COMMON \
|
|
-I$(OPENAIRCN_DIR)/UTILS
|
|
|
|
OUTDIR = $(UE_NAS_DIR)/ue_objs
|
|
|
|
libnas_api_OBJS = \
|
|
EURECOM-NAS/src/api/mme/mme_api.o \
|
|
EURECOM-NAS/src/api/network/nas_message.o
|
|
|
|
libnas_emm_OBJS = \
|
|
EURECOM-NAS/src/emm/Attach.o \
|
|
EURECOM-NAS/src/emm/Authentication.o \
|
|
EURECOM-NAS/src/emm/Detach.o \
|
|
EURECOM-NAS/src/emm/EmmCommon.o \
|
|
EURECOM-NAS/src/emm/emm_data_ctx.o \
|
|
EURECOM-NAS/src/emm/emm_main.o \
|
|
EURECOM-NAS/src/emm/EmmStatusHdl.o \
|
|
EURECOM-NAS/src/emm/Identification.o \
|
|
EURECOM-NAS/src/emm/IdleMode.o \
|
|
EURECOM-NAS/src/emm/LowerLayer.o \
|
|
EURECOM-NAS/src/emm/SecurityModeControl.o \
|
|
EURECOM-NAS/src/emm/ServiceRequestHdl.o \
|
|
EURECOM-NAS/src/emm/TrackingAreaUpdate.o
|
|
|
|
libnas_emm_msg_OBJS = \
|
|
EURECOM-NAS/src/emm/msg/AttachAccept.o \
|
|
EURECOM-NAS/src/emm/msg/AuthenticationFailure.o \
|
|
EURECOM-NAS/src/emm/msg/CsServiceNotification.o \
|
|
EURECOM-NAS/src/emm/msg/ExtendedServiceRequest.o \
|
|
EURECOM-NAS/src/emm/msg/IdentityResponse.o \
|
|
EURECOM-NAS/src/emm/msg/EmmInformation.o \
|
|
EURECOM-NAS/src/emm/msg/ServiceReject.o \
|
|
EURECOM-NAS/src/emm/msg/TrackingAreaUpdateReject.o \
|
|
EURECOM-NAS/src/emm/msg/AttachComplete.o \
|
|
EURECOM-NAS/src/emm/msg/AuthenticationReject.o \
|
|
EURECOM-NAS/src/emm/msg/DetachAccept.o \
|
|
EURECOM-NAS/src/emm/msg/GutiReallocationCommand.o \
|
|
EURECOM-NAS/src/emm/msg/emm_msg.o \
|
|
EURECOM-NAS/src/emm/msg/SecurityModeCommand.o \
|
|
EURECOM-NAS/src/emm/msg/ServiceRequest.o \
|
|
EURECOM-NAS/src/emm/msg/TrackingAreaUpdateRequest.o \
|
|
EURECOM-NAS/src/emm/msg/AttachReject.o \
|
|
EURECOM-NAS/src/emm/msg/AuthenticationRequest.o \
|
|
EURECOM-NAS/src/emm/msg/DetachRequest.o \
|
|
EURECOM-NAS/src/emm/msg/GutiReallocationComplete.o \
|
|
EURECOM-NAS/src/emm/msg/SecurityModeComplete.o \
|
|
EURECOM-NAS/src/emm/msg/TrackingAreaUpdateAccept.o \
|
|
EURECOM-NAS/src/emm/msg/UplinkNasTransport.o \
|
|
EURECOM-NAS/src/emm/msg/AttachRequest.o \
|
|
EURECOM-NAS/src/emm/msg/AuthenticationResponse.o \
|
|
EURECOM-NAS/src/emm/msg/DownlinkNasTransport.o \
|
|
EURECOM-NAS/src/emm/msg/EmmStatus.o \
|
|
EURECOM-NAS/src/emm/msg/IdentityRequest.o \
|
|
EURECOM-NAS/src/emm/msg/SecurityModeReject.o \
|
|
EURECOM-NAS/src/emm/msg/TrackingAreaUpdateComplete.o
|
|
|
|
libnas_emm_sap_OBJS = \
|
|
EURECOM-NAS/src/emm/sap/emm_as.o \
|
|
EURECOM-NAS/src/emm/sap/emm_cn.o \
|
|
EURECOM-NAS/src/emm/sap/EmmDeregisteredNoImsi.o \
|
|
EURECOM-NAS/src/emm/sap/emm_reg.o \
|
|
EURECOM-NAS/src/emm/sap/EmmRegisteredUpdateNeeded.o \
|
|
EURECOM-NAS/src/emm/sap/EmmDeregisteredNormalService.o \
|
|
EURECOM-NAS/src/emm/sap/emm_sap.o \
|
|
EURECOM-NAS/src/emm/sap/EmmDeregisteredPlmnSearch.o \
|
|
EURECOM-NAS/src/emm/sap/emm_esm.o \
|
|
EURECOM-NAS/src/emm/sap/EmmRegisteredAttemptingToUpdate.o \
|
|
EURECOM-NAS/src/emm/sap/emm_send.o \
|
|
EURECOM-NAS/src/emm/sap/EmmCommonProcedureInitiated.o \
|
|
EURECOM-NAS/src/emm/sap/EmmRegistered.o \
|
|
EURECOM-NAS/src/emm/sap/EmmDeregisteredAttachNeeded.o \
|
|
EURECOM-NAS/src/emm/sap/EmmRegisteredImsiDetachInitiated.o \
|
|
EURECOM-NAS/src/emm/sap/EmmServiceRequestInitiated.o \
|
|
EURECOM-NAS/src/emm/sap/EmmDeregisteredAttemptingToAttach.o \
|
|
EURECOM-NAS/src/emm/sap/emm_fsm.o \
|
|
EURECOM-NAS/src/emm/sap/EmmRegisteredInitiated.o \
|
|
EURECOM-NAS/src/emm/sap/EmmTrackingAreaUpdatingInitiated.o \
|
|
EURECOM-NAS/src/emm/sap/EmmDeregistered.o \
|
|
EURECOM-NAS/src/emm/sap/EmmRegisteredLimitedService.o \
|
|
EURECOM-NAS/src/emm/sap/EmmDeregisteredInitiated.o \
|
|
EURECOM-NAS/src/emm/sap/EmmNull.o \
|
|
EURECOM-NAS/src/emm/sap/EmmRegisteredNoCellAvailable.o \
|
|
EURECOM-NAS/src/emm/sap/EmmDeregisteredLimitedService.o \
|
|
EURECOM-NAS/src/emm/sap/emm_recv.o \
|
|
EURECOM-NAS/src/emm/sap/EmmRegisteredNormalService.o \
|
|
EURECOM-NAS/src/emm/sap/EmmDeregisteredNoCellAvailable.o \
|
|
EURECOM-NAS/src/emm/sap/EmmRegisteredPlmnSearch.o
|
|
|
|
libnas_esm_OBJS = \
|
|
EURECOM-NAS/src/esm/esm_ebr_context.o \
|
|
EURECOM-NAS/src/esm/PdnConnectivity.o \
|
|
EURECOM-NAS/src/esm/esm_ebr.o \
|
|
EURECOM-NAS/src/esm/EpsBearerContextDeactivation.o \
|
|
EURECOM-NAS/src/esm/DefaultEpsBearerContextActivation.o \
|
|
EURECOM-NAS/src/esm/DedicatedEpsBearerContextActivation.o \
|
|
EURECOM-NAS/src/esm/PdnDisconnect.o \
|
|
EURECOM-NAS/src/esm/EsmStatusHdl.o \
|
|
EURECOM-NAS/src/esm/esm_main.o \
|
|
EURECOM-NAS/src/esm/esm_pt.o \
|
|
EURECOM-NAS/src/esm/esm_ip.o
|
|
|
|
libnas_esm_msg_OBJS = \
|
|
EURECOM-NAS/src/esm/msg/ModifyEpsBearerContextRequest.o \
|
|
EURECOM-NAS/src/esm/msg/DeactivateEpsBearerContextRequest.o \
|
|
EURECOM-NAS/src/esm/msg/BearerResourceAllocationReject.o \
|
|
EURECOM-NAS/src/esm/msg/BearerResourceModificationRequest.o \
|
|
EURECOM-NAS/src/esm/msg/ActivateDedicatedEpsBearerContextRequest.o \
|
|
EURECOM-NAS/src/esm/msg/EsmInformationResponse.o \
|
|
EURECOM-NAS/src/esm/msg/PdnDisconnectReject.o \
|
|
EURECOM-NAS/src/esm/msg/ActivateDedicatedEpsBearerContextAccept.o \
|
|
EURECOM-NAS/src/esm/msg/PdnDisconnectRequest.o \
|
|
EURECOM-NAS/src/esm/msg/BearerResourceModificationReject.o \
|
|
EURECOM-NAS/src/esm/msg/ActivateDefaultEpsBearerContextAccept.o \
|
|
EURECOM-NAS/src/esm/msg/ActivateDedicatedEpsBearerContextReject.o \
|
|
EURECOM-NAS/src/esm/msg/ModifyEpsBearerContextAccept.o \
|
|
EURECOM-NAS/src/esm/msg/DeactivateEpsBearerContextAccept.o \
|
|
EURECOM-NAS/src/esm/msg/esm_msg.o \
|
|
EURECOM-NAS/src/esm/msg/EsmInformationRequest.o \
|
|
EURECOM-NAS/src/esm/msg/ActivateDefaultEpsBearerContextRequest.o \
|
|
EURECOM-NAS/src/esm/msg/ModifyEpsBearerContextReject.o \
|
|
EURECOM-NAS/src/esm/msg/EsmStatus.o \
|
|
EURECOM-NAS/src/esm/msg/PdnConnectivityReject.o \
|
|
EURECOM-NAS/src/esm/msg/ActivateDefaultEpsBearerContextReject.o \
|
|
EURECOM-NAS/src/esm/msg/PdnConnectivityRequest.o \
|
|
EURECOM-NAS/src/esm/msg/BearerResourceAllocationRequest.o
|
|
|
|
libnas_esm_sap_OBJS = \
|
|
EURECOM-NAS/src/esm/sap/esm_recv.o \
|
|
EURECOM-NAS/src/esm/sap/esm_send.o \
|
|
EURECOM-NAS/src/esm/sap/esm_sap.o
|
|
|
|
libnas_ies_OBJS = \
|
|
EURECOM-NAS/src/ies/UeSecurityCapability.o \
|
|
EURECOM-NAS/src/ies/SecurityHeaderType.o \
|
|
EURECOM-NAS/src/ies/RadioPriority.o \
|
|
EURECOM-NAS/src/ies/EpsAttachResult.o \
|
|
EURECOM-NAS/src/ies/ImeisvRequest.o \
|
|
EURECOM-NAS/src/ies/EmergencyNumberList.o \
|
|
EURECOM-NAS/src/ies/SupportedCodecList.o \
|
|
EURECOM-NAS/src/ies/EsmCause.o \
|
|
EURECOM-NAS/src/ies/NetworkName.o \
|
|
EURECOM-NAS/src/ies/AuthenticationResponseParameter.o \
|
|
EURECOM-NAS/src/ies/Cli.o \
|
|
EURECOM-NAS/src/ies/AccessPointName.o \
|
|
EURECOM-NAS/src/ies/DaylightSavingTime.o \
|
|
EURECOM-NAS/src/ies/LcsIndicator.o \
|
|
EURECOM-NAS/src/ies/PagingIdentity.o \
|
|
EURECOM-NAS/src/ies/EpsMobileIdentity.o \
|
|
EURECOM-NAS/src/ies/GutiType.o \
|
|
EURECOM-NAS/src/ies/NasKeySetIdentifier.o \
|
|
EURECOM-NAS/src/ies/CsfbResponse.o \
|
|
EURECOM-NAS/src/ies/PacketFlowIdentifier.o \
|
|
EURECOM-NAS/src/ies/ApnAggregateMaximumBitRate.o \
|
|
EURECOM-NAS/src/ies/EpsBearerContextStatus.o \
|
|
EURECOM-NAS/src/ies/MobileIdentity.o \
|
|
EURECOM-NAS/src/ies/AuthenticationFailureParameter.o \
|
|
EURECOM-NAS/src/ies/EpsUpdateResult.o \
|
|
EURECOM-NAS/src/ies/TimeZone.o \
|
|
EURECOM-NAS/src/ies/MessageType.o \
|
|
EURECOM-NAS/src/ies/EmmCause.o \
|
|
EURECOM-NAS/src/ies/MobileStationClassmark2.o \
|
|
EURECOM-NAS/src/ies/AuthenticationParameterRand.o \
|
|
EURECOM-NAS/src/ies/PdnAddress.o \
|
|
EURECOM-NAS/src/ies/MobileStationClassmark3.o \
|
|
EURECOM-NAS/src/ies/ServiceType.o \
|
|
EURECOM-NAS/src/ies/NasRequestType.o \
|
|
EURECOM-NAS/src/ies/PlmnList.o \
|
|
EURECOM-NAS/src/ies/EpsQualityOfService.o \
|
|
EURECOM-NAS/src/ies/NasMessageContainer.o \
|
|
EURECOM-NAS/src/ies/EsmInformationTransferFlag.o \
|
|
EURECOM-NAS/src/ies/TrafficFlowTemplate.o \
|
|
EURECOM-NAS/src/ies/LinkedEpsBearerIdentity.o \
|
|
EURECOM-NAS/src/ies/NasSecurityAlgorithms.o \
|
|
EURECOM-NAS/src/ies/LlcServiceAccessPointIdentifier.o \
|
|
EURECOM-NAS/src/ies/ShortMac.o \
|
|
EURECOM-NAS/src/ies/TrafficFlowAggregateDescription.o \
|
|
EURECOM-NAS/src/ies/PTmsiSignature.o \
|
|
EURECOM-NAS/src/ies/ProtocolDiscriminator.o \
|
|
EURECOM-NAS/src/ies/EpsBearerIdentity.o \
|
|
EURECOM-NAS/src/ies/TimeZoneAndTime.o \
|
|
EURECOM-NAS/src/ies/TrackingAreaIdentityList.o \
|
|
EURECOM-NAS/src/ies/QualityOfService.o \
|
|
EURECOM-NAS/src/ies/EpsUpdateType.o \
|
|
EURECOM-NAS/src/ies/PdnType.o \
|
|
EURECOM-NAS/src/ies/UeRadioCapabilityInformationUpdateNeeded.o \
|
|
EURECOM-NAS/src/ies/AuthenticationParameterAutn.o \
|
|
EURECOM-NAS/src/ies/EpsAttachType.o \
|
|
EURECOM-NAS/src/ies/IdentityType2.o \
|
|
EURECOM-NAS/src/ies/LcsClientIdentity.o \
|
|
EURECOM-NAS/src/ies/DetachType.o \
|
|
EURECOM-NAS/src/ies/LocationAreaIdentification.o \
|
|
EURECOM-NAS/src/ies/TrackingAreaIdentity.o \
|
|
EURECOM-NAS/src/ies/CipheringKeySequenceNumber.o \
|
|
EURECOM-NAS/src/ies/MsNetworkCapability.o \
|
|
EURECOM-NAS/src/ies/UeNetworkCapability.o \
|
|
EURECOM-NAS/src/ies/ProtocolConfigurationOptions.o \
|
|
EURECOM-NAS/src/ies/AdditionalUpdateType.o \
|
|
EURECOM-NAS/src/ies/TmsiStatus.o \
|
|
EURECOM-NAS/src/ies/EsmMessageContainer.o \
|
|
EURECOM-NAS/src/ies/Nonce.o \
|
|
EURECOM-NAS/src/ies/ProcedureTransactionIdentity.o \
|
|
EURECOM-NAS/src/ies/TransactionIdentifier.o \
|
|
EURECOM-NAS/src/ies/AdditionalUpdateResult.o \
|
|
EURECOM-NAS/src/ies/GprsTimer.o \
|
|
EURECOM-NAS/src/ies/EpsNetworkFeatureSupport.o \
|
|
EURECOM-NAS/src/ies/SsCode.o \
|
|
EURECOM-NAS/src/ies/DrxParameter.o \
|
|
EURECOM-NAS/src/ies/KsiAndSequenceNumber.o
|
|
|
|
libnas_utils_OBJS = \
|
|
EURECOM-NAS/src/util/device.o \
|
|
EURECOM-NAS/src/util/memory.o \
|
|
EURECOM-NAS/src/util/nas_log.o \
|
|
EURECOM-NAS/src/util/nas_timer.o \
|
|
EURECOM-NAS/src/util/socket.o \
|
|
EURECOM-NAS/src/util/stty.o \
|
|
EURECOM-NAS/src/util/TLVEncoder.o \
|
|
EURECOM-NAS/src/util/TLVDecoder.o \
|
|
EURECOM-NAS/src/util/OctetString.o
|
|
|
|
libnas_user_OBJS = \
|
|
EURECOM-NAS/src/api/user/user_api.o \
|
|
EURECOM-NAS/src/api/user/user_indication.o \
|
|
EURECOM-NAS/src/api/user/at_command.o \
|
|
EURECOM-NAS/src/api/user/at_error.o \
|
|
EURECOM-NAS/src/api/user/at_response.o
|
|
|
|
libnas_usim_OBJS = \
|
|
EURECOM-NAS/src/api/usim/aka_functions.o \
|
|
EURECOM-NAS/src/api/usim/usim_api.o
|
|
|
|
libnas_OBJS = \
|
|
nas_ue_task.o \
|
|
nas_itti_messaging.o \
|
|
EURECOM-NAS/src/nas_parser.o \
|
|
EURECOM-NAS/src/nas_proc.o \
|
|
EURECOM-NAS/src/nas_user.o \
|
|
$(libnas_utils_OBJS) \
|
|
$(libnas_user_OBJS) \
|
|
$(libnas_usim_OBJS) \
|
|
$(libnas_emm_OBJS) \
|
|
$(libnas_emm_msg_OBJS) \
|
|
$(libnas_emm_sap_OBJS) \
|
|
$(libnas_esm_OBJS) \
|
|
$(libnas_esm_msg_OBJS) \
|
|
$(libnas_esm_sap_OBJS) \
|
|
$(libnas_ies_OBJS) \
|
|
$(libnas_api_OBJS)
|
|
|
|
NAS_UE_COMPILED_OBJS = $(addprefix $(OUTDIR)/,$(libnas_OBJS))
|
|
|
|
# pull in dependency info for *existing* .o files
|
|
-include $(NAS_UE_COMPILED_OBJS:.o=.d)
|
|
|
|
CFLAGS = \
|
|
-g \
|
|
-Wall \
|
|
-DNAS_UE \
|
|
-DUE_BUILD \
|
|
-Wuninitialized \
|
|
-Werror=implicit-function-declaration \
|
|
$(UENAS_CFLAGS) \
|
|
$(libnas_INCLUDES)
|
|
|
|
.SECONDEXPANSION:
|
|
$(NAS_UE_COMPILED_OBJS): %.o : $$(subst $(OUTDIR), $(UE_NAS_DIR), $$*.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)/libuenas.a: $(NAS_UE_COMPILED_OBJS)
|
|
@echo Creating UE_NAS archive
|
|
@$(AR) rcs $@ $(addprefix $(OUTDIR)/,$(libnas_OBJS))
|
|
|
|
clean:
|
|
@$(RM_F_V) -r $(OUTDIR)/*.o
|
|
@$(RM_F_V) -r $(OUTDIR)/*.d
|
|
@$(RM_F_V) $(OUTDIR)/libuenas.a
|
|
|
|
cleanall:
|
|
@$(RM_F_V) -r $(OUTDIR)
|
|
|
|
showcflags:
|
|
@echo uenas cflags: $(CFLAGS)
|