ASN_MODULE_SOURCES=	\
	MessageFrame.c	\
	RegionalExtension.c	\
	BasicSafetyMessage.c	\
	PartIIcontent.c	\
	PartII-Id.c	\
	CommonSafetyRequest.c	\
	EmergencyVehicleAlert.c	\
	IntersectionCollision.c	\
	MapData.c	\
	NMEAcorrections.c	\
	PersonalSafetyMessage.c	\
	ProbeDataManagement.c	\
	ProbeVehicleData.c	\
	RoadSideAlert.c	\
	RTCMcorrections.c	\
	SPAT.c	\
	SignalRequestMessage.c	\
	SignalStatusMessage.c	\
	TravelerInformation.c	\
	TestMessage00.c	\
	TestMessage01.c	\
	TestMessage02.c	\
	TestMessage03.c	\
	TestMessage04.c	\
	TestMessage05.c	\
	TestMessage06.c	\
	TestMessage07.c	\
	TestMessage08.c	\
	TestMessage09.c	\
	TestMessage10.c	\
	TestMessage11.c	\
	TestMessage12.c	\
	TestMessage13.c	\
	TestMessage14.c	\
	TestMessage15.c	\
	AccelerationSet4Way.c	\
	AccelSteerYawRateConfidence.c	\
	AdvisorySpeed.c	\
	AdvisorySpeedList.c	\
	AntennaOffsetSet.c	\
	ApproachOrLane.c	\
	BrakeSystemStatus.c	\
	BSMcoreData.c	\
	BumperHeights.c	\
	Circle.c	\
	ComputedLane.c	\
	ConfidenceSet.c	\
	ConnectingLane.c	\
	Connection.c	\
	ConnectionManeuverAssist.c	\
	ConnectsToList.c	\
	DataParameters.c	\
	DDate.c	\
	DDateTime.c	\
	DFullTime.c	\
	DMonthDay.c	\
	DTime.c	\
	DYearMonth.c	\
	DisabledVehicle.c	\
	EmergencyDetails.c	\
	EnabledLaneList.c	\
	EventDescription.c	\
	FullPositionVector.c	\
	GenericLane.c	\
	GeographicalPath.c	\
	GeometricProjection.c	\
	Header.c	\
	IntersectionAccessPoint.c	\
	IntersectionGeometry.c	\
	IntersectionGeometryList.c	\
	IntersectionReferenceID.c	\
	IntersectionState.c	\
	IntersectionStateList.c	\
	ExitService.c	\
	GenericSignage.c	\
	SpeedLimit.c	\
	WorkZone.c	\
	J1939data.c	\
	TireDataList.c	\
	TireData.c	\
	AxleWeightList.c	\
	AxleWeightSet.c	\
	LaneAttributes.c	\
	LaneDataAttribute.c	\
	LaneDataAttributeList.c	\
	LaneList.c	\
	LaneTypeAttributes.c	\
	ManeuverAssistList.c	\
	MovementEventList.c	\
	MovementEvent.c	\
	MovementList.c	\
	MovementState.c	\
	Node-LL-24B.c	\
	Node-LL-28B.c	\
	Node-LL-32B.c	\
	Node-LL-36B.c	\
	Node-LL-44B.c	\
	Node-LL-48B.c	\
	Node-LLmD-64b.c	\
	Node-XY-20b.c	\
	Node-XY-22b.c	\
	Node-XY-24b.c	\
	Node-XY-26b.c	\
	Node-XY-28b.c	\
	Node-XY-32b.c	\
	NodeAttributeLLList.c	\
	NodeAttributeSetLL.c	\
	NodeAttributeSetXY.c	\
	NodeAttributeXYList.c	\
	NodeListLL.c	\
	NodeListXY.c	\
	NodeLL.c	\
	NodeOffsetPointLL.c	\
	NodeOffsetPointXY.c	\
	NodeSetLL.c	\
	NodeSetXY.c	\
	NodeXY.c	\
	ObstacleDetection.c	\
	OffsetSystem.c	\
	OverlayLaneList.c	\
	PathHistory.c	\
	PathHistoryPointList.c	\
	PathHistoryPoint.c	\
	PathPrediction.c	\
	PivotPointDescription.c	\
	Position3D.c	\
	PositionalAccuracy.c	\
	PositionConfidenceSet.c	\
	PreemptPriorityList.c	\
	SignalControlZone.c	\
	PrivilegedEvents.c	\
	PropelledInformation.c	\
	RegionList.c	\
	RegionOffsets.c	\
	RegionPointSet.c	\
	RegulatorySpeedLimit.c	\
	RequestedItemList.c	\
	RequestorDescription.c	\
	RequestorPositionVector.c	\
	RequestorType.c	\
	RestrictionClassAssignment.c	\
	RestrictionClassList.c	\
	RestrictionUserTypeList.c	\
	RestrictionUserType.c	\
	RoadLaneSetList.c	\
	RoadSegmentList.c	\
	RoadSegmentReferenceID.c	\
	RoadSegment.c	\
	RoadSignID.c	\
	RTCMheader.c	\
	RTCMmessageList.c	\
	RTCMPackage.c	\
	Sample.c	\
	SegmentAttributeLLList.c	\
	SegmentAttributeXYList.c	\
	ShapePointSet.c	\
	SignalRequesterInfo.c	\
	SignalRequestList.c	\
	SignalRequestPackage.c	\
	SignalRequest.c	\
	SignalStatusList.c	\
	SignalStatusPackageList.c	\
	SignalStatusPackage.c	\
	SignalStatus.c	\
	SnapshotDistance.c	\
	Snapshot.c	\
	SnapshotTime.c	\
	SpecialVehicleExtensions.c	\
	SpeedandHeadingandThrottleConfidence.c	\
	SpeedLimitList.c	\
	SpeedProfileMeasurementList.c	\
	SpeedProfile.c	\
	SupplementalVehicleExtensions.c	\
	TimeChangeDetails.c	\
	TrailerData.c	\
	TrailerHistoryPointList.c	\
	TrailerHistoryPoint.c	\
	TrailerUnitDescriptionList.c	\
	TrailerUnitDescription.c	\
	TransmissionAndSpeed.c	\
	TravelerDataFrameList.c	\
	TravelerDataFrame.c	\
	ValidRegion.c	\
	VehicleClassification.c	\
	VehicleData.c	\
	VehicleIdent.c	\
	VehicleID.c	\
	VehicleSafetyExtensions.c	\
	VehicleSize.c	\
	VehicleStatusRequest.c	\
	VehicleStatusRequestList.c	\
	VehicleStatus.c	\
	VerticalOffset.c	\
	WeatherProbe.c	\
	WeatherReport.c	\
	WiperSet.c	\
	Acceleration.c	\
	AccelerationConfidence.c	\
	AdvisorySpeedType.c	\
	AllowedManeuvers.c	\
	AmbientAirPressure.c	\
	AmbientAirTemperature.c	\
	DSRC_Angle.c	\
	AnimalPropelledType.c	\
	AnimalType.c	\
	AntiLockBrakeStatus.c	\
	ApproachID.c	\
	Attachment.c	\
	AttachmentRadius.c	\
	AuxiliaryBrakeStatus.c	\
	BasicVehicleClass.c	\
	BasicVehicleRole.c	\
	BrakeAppliedPressure.c	\
	BrakeAppliedStatus.c	\
	BrakeBoostApplied.c	\
	BumperHeight.c	\
	CoarseHeading.c	\
	CodeWord.c	\
	CoefficientOfFriction.c	\
	Confidence.c	\
	Count.c	\
	DDay.c	\
	DeltaAngle.c	\
	DeltaTime.c	\
	DescriptiveName.c	\
	DHour.c	\
	DirectionOfUse.c	\
	DistanceUnits.c	\
	DMinute.c	\
	DMonth.c	\
	DOffset.c	\
	DrivenLineOffsetLg.c	\
	DrivenLineOffsetSm.c	\
	DrivingWheelAngle.c	\
	DSecond.c	\
	DSRCmsgID.c	\
	Duration.c	\
	DYear.c	\
	ElevationConfidence.c	\
	DSRC_Elevation.c	\
	Extent.c	\
	ExteriorLights.c	\
	FuelType.c	\
	FurtherInfoID.c	\
	GNSSstatus.c	\
	GrossDistance.c	\
	GrossSpeed.c	\
	HeadingConfidence.c	\
	Heading.c	\
	HeadingSlice.c	\
	IntersectionID.c	\
	IntersectionStatusObject.c	\
	IsDolly.c	\
	Iso3833VehicleType.c	\
	ITIStextPhrase.c	\
	AxleLocation.c	\
	AxleWeight.c	\
	CargoWeight.c	\
	DriveAxleLiftAirPressure.c	\
	DriveAxleLocation.c	\
	DriveAxleLubePressure.c	\
	DriveAxleTemperature.c	\
	SteeringAxleLubePressure.c	\
	SteeringAxleTemperature.c	\
	TireLeakageRate.c	\
	TireLocation.c	\
	TirePressureThresholdDetection.c	\
	TirePressure.c	\
	TireTemp.c	\
	TrailerWeight.c	\
	WheelEndElectFault.c	\
	WheelSensorStatus.c	\
	LaneAttributes-Barrier.c	\
	LaneAttributes-Bike.c	\
	LaneAttributes-Crosswalk.c	\
	LaneAttributes-Parking.c	\
	LaneAttributes-Sidewalk.c	\
	LaneAttributes-Striping.c	\
	LaneAttributes-TrackedVehicle.c	\
	LaneAttributes-Vehicle.c	\
	LaneConnectionID.c	\
	LaneDirection.c	\
	LaneID.c	\
	LaneSharing.c	\
	LaneWidth.c	\
	Latitude.c	\
	LayerID.c	\
	LayerType.c	\
	LightbarInUse.c	\
	Longitude.c	\
	Location-quality.c	\
	Location-tech.c	\
	MergeDivergeNodeAngle.c	\
	MessageBLOB.c	\
	MinuteOfTheYear.c	\
	MinutesDuration.c	\
	MotorizedPropelledType.c	\
	MovementPhaseState.c	\
	DSRC_MsgCount.c	\
	MsgCRC.c	\
	MultiVehicleResponse.c	\
	MUTCDCode.c	\
	NMEA-MsgType.c	\
	NMEA-Payload.c	\
	NMEA-Revision.c	\
	NodeAttributeLL.c	\
	NodeAttributeXY.c	\
	NumberOfParticipantsInCluster.c	\
	ObjectCount.c	\
	ObstacleDirection.c	\
	ObstacleDistance.c	\
	Offset-B09.c	\
	Offset-B10.c	\
	Offset-B11.c	\
	Offset-B12.c	\
	Offset-B13.c	\
	Offset-B14.c	\
	Offset-B16.c	\
	OffsetLL-B12.c	\
	OffsetLL-B14.c	\
	OffsetLL-B16.c	\
	OffsetLL-B18.c	\
	OffsetLL-B22.c	\
	OffsetLL-B24.c	\
	PayloadData.c	\
	PedestrianBicycleDetect.c	\
	HumanPropelledType.c	\
	PersonalAssistive.c	\
	PersonalClusterRadius.c	\
	PersonalCrossingInProgress.c	\
	PersonalCrossingRequest.c	\
	PersonalDeviceUsageState.c	\
	PersonalDeviceUserType.c	\
	PivotingAllowed.c	\
	PositionConfidence.c	\
	PrioritizationResponseStatus.c	\
	Priority.c	\
	PriorityRequestType.c	\
	PrivilegedEventFlags.c	\
	ProbeSegmentNumber.c	\
	PublicSafetyAndRoadWorkerActivity.c	\
	PublicSafetyDirectingTrafficSubType.c	\
	PublicSafetyEventResponderWorkerType.c	\
	RadiusOfCurvature.c	\
	Radius-B12.c	\
	RainSensor.c	\
	RegionId.c	\
	RequestedItem.c	\
	RequestID.c	\
	RequestImportanceLevel.c	\
	RequestSubRole.c	\
	ResponseType.c	\
	RestrictionAppliesTo.c	\
	RestrictionClassID.c	\
	RoadRegulatorID.c	\
	RoadSegmentID.c	\
	RoadwayCrownAngle.c	\
	RTCM-Revision.c	\
	RTCMmessage.c	\
	Scale-B12.c	\
	SecondOfTime.c	\
	SegmentAttributeLL.c	\
	SegmentAttributeXY.c	\
	SemiMajorAxisAccuracy.c	\
	SemiMajorAxisOrientation.c	\
	SemiMinorAxisAccuracy.c	\
	SignalGroupID.c	\
	SignalReqScheme.c	\
	SignPrority.c	\
	SirenInUse.c	\
	SpeedAdvice.c	\
	SpeedConfidence.c	\
	SpeedLimitType.c	\
	SpeedProfileMeasurement.c	\
	Speed.c	\
	SSPindex.c	\
	StabilityControlStatus.c	\
	StationID.c	\
	SteeringWheelAngleConfidence.c	\
	SteeringWheelAngleRateOfChange.c	\
	SteeringWheelAngle.c	\
	SunSensor.c	\
	TemporaryID.c	\
	TermDistance.c	\
	TermTime.c	\
	ThrottleConfidence.c	\
	ThrottlePosition.c	\
	TimeConfidence.c	\
	TimeIntervalConfidence.c	\
	DSRC_TimeMark.c	\
	TimeOffset.c	\
	TractionControlStatus.c	\
	TrailerMass.c	\
	TransitStatus.c	\
	TransitVehicleOccupancy.c	\
	TransitVehicleStatus.c	\
	TransmissionState.c	\
	TravelerInfoType.c	\
	UniqueMSGID.c	\
	URL-Base.c	\
	URL-Link.c	\
	URL-Short.c	\
	UserSizeAndBehaviour.c	\
	VehicleEventFlags.c	\
	VehicleHeight.c	\
	VehicleLength.c	\
	VehicleMass.c	\
	VehicleStatusDeviceTypeTag.c	\
	VehicleType.c	\
	VehicleWidth.c	\
	Velocity.c	\
	VerticalAccelerationThreshold.c	\
	VerticalAcceleration.c	\
	VertOffset-B07.c	\
	VertOffset-B08.c	\
	VertOffset-B09.c	\
	VertOffset-B10.c	\
	VertOffset-B11.c	\
	VertOffset-B12.c	\
	VINstring.c	\
	WaitOnStopline.c	\
	WiperRate.c	\
	WiperStatus.c	\
	YawRateConfidence.c	\
	YawRate.c	\
	ZoneLength.c	\
	Zoom.c	\
	AltitudeConfidence.c	\
	AltitudeValue.c	\
	EmissionType.c	\
	Altitude.c	\
	PrioritizationResponse.c	\
	PrioritizationResponseList.c	\
	ConnectionManeuverAssist-addGrpC.c	\
	IntersectionState-addGrpC.c	\
	MapData-addGrpC.c	\
	Position3D-addGrpC.c	\
	RestrictionUserType-addGrpC.c	\
	SignalHeadLocation.c	\
	SignalHeadLocationList.c	\
	VehicleToLanePosition.c	\
	VehicleToLanePositionList.c	\
	AddGrpB_Angle.c	\
	Day.c	\
	DayOfWeek.c	\
	DegreesLat.c	\
	DegreesLong.c	\
	AddGrpB_Elevation.c	\
	Holiday.c	\
	Hour.c	\
	LatitudeDMS.c	\
	LongitudeDMS.c	\
	MaxTimetoChange.c	\
	MinTimetoChange.c	\
	Minute.c	\
	MinutesAngle.c	\
	Month.c	\
	AddGrpB_MsgCount.c	\
	Second.c	\
	SecondsAngle.c	\
	SummerTime.c	\
	TenthSecond.c	\
	TimeRemaining.c	\
	Year.c	\
	LatitudeDMS2.c	\
	LongitudeDMS2.c	\
	Node-LLdms-48b.c	\
	Node-LLdms-80b.c	\
	LaneDataAttribute-addGrpB.c	\
	MovementEvent-addGrpB.c	\
	NodeOffsetPointXY-addGrpB.c	\
	Position3D-addGrpB.c	\
	AddGrpB_TimeMark.c	\
	EssMobileFriction.c	\
	EssPrecipRate.c	\
	EssPrecipSituation.c	\
	EssPrecipYesNo.c	\
	EssSolarRadiation.c	\
	GenericLocations.c	\
	IncidentResponseEquipment.c	\
	ITIStext.c	\
	ResponderGroupAffected.c	\
	VehicleGroupAffected.c	\
	ITIScodesAndText.c	\
	ITIScodes.c

ASN_MODULE_HEADERS=	\
	MessageFrame.h	\
	RegionalExtension.h	\
	BasicSafetyMessage.h	\
	PartIIcontent.h	\
	PartII-Id.h	\
	CommonSafetyRequest.h	\
	EmergencyVehicleAlert.h	\
	IntersectionCollision.h	\
	MapData.h	\
	NMEAcorrections.h	\
	PersonalSafetyMessage.h	\
	ProbeDataManagement.h	\
	ProbeVehicleData.h	\
	RoadSideAlert.h	\
	RTCMcorrections.h	\
	SPAT.h	\
	SignalRequestMessage.h	\
	SignalStatusMessage.h	\
	TravelerInformation.h	\
	TestMessage00.h	\
	TestMessage01.h	\
	TestMessage02.h	\
	TestMessage03.h	\
	TestMessage04.h	\
	TestMessage05.h	\
	TestMessage06.h	\
	TestMessage07.h	\
	TestMessage08.h	\
	TestMessage09.h	\
	TestMessage10.h	\
	TestMessage11.h	\
	TestMessage12.h	\
	TestMessage13.h	\
	TestMessage14.h	\
	TestMessage15.h	\
	AccelerationSet4Way.h	\
	AccelSteerYawRateConfidence.h	\
	AdvisorySpeed.h	\
	AdvisorySpeedList.h	\
	AntennaOffsetSet.h	\
	ApproachOrLane.h	\
	BrakeSystemStatus.h	\
	BSMcoreData.h	\
	BumperHeights.h	\
	Circle.h	\
	ComputedLane.h	\
	ConfidenceSet.h	\
	ConnectingLane.h	\
	Connection.h	\
	ConnectionManeuverAssist.h	\
	ConnectsToList.h	\
	DataParameters.h	\
	DDate.h	\
	DDateTime.h	\
	DFullTime.h	\
	DMonthDay.h	\
	DTime.h	\
	DYearMonth.h	\
	DisabledVehicle.h	\
	EmergencyDetails.h	\
	EnabledLaneList.h	\
	EventDescription.h	\
	FullPositionVector.h	\
	GenericLane.h	\
	GeographicalPath.h	\
	GeometricProjection.h	\
	Header.h	\
	IntersectionAccessPoint.h	\
	IntersectionGeometry.h	\
	IntersectionGeometryList.h	\
	IntersectionReferenceID.h	\
	IntersectionState.h	\
	IntersectionStateList.h	\
	ExitService.h	\
	GenericSignage.h	\
	SpeedLimit.h	\
	WorkZone.h	\
	J1939data.h	\
	TireDataList.h	\
	TireData.h	\
	AxleWeightList.h	\
	AxleWeightSet.h	\
	LaneAttributes.h	\
	LaneDataAttribute.h	\
	LaneDataAttributeList.h	\
	LaneList.h	\
	LaneTypeAttributes.h	\
	ManeuverAssistList.h	\
	MovementEventList.h	\
	MovementEvent.h	\
	MovementList.h	\
	MovementState.h	\
	Node-LL-24B.h	\
	Node-LL-28B.h	\
	Node-LL-32B.h	\
	Node-LL-36B.h	\
	Node-LL-44B.h	\
	Node-LL-48B.h	\
	Node-LLmD-64b.h	\
	Node-XY-20b.h	\
	Node-XY-22b.h	\
	Node-XY-24b.h	\
	Node-XY-26b.h	\
	Node-XY-28b.h	\
	Node-XY-32b.h	\
	NodeAttributeLLList.h	\
	NodeAttributeSetLL.h	\
	NodeAttributeSetXY.h	\
	NodeAttributeXYList.h	\
	NodeListLL.h	\
	NodeListXY.h	\
	NodeLL.h	\
	NodeOffsetPointLL.h	\
	NodeOffsetPointXY.h	\
	NodeSetLL.h	\
	NodeSetXY.h	\
	NodeXY.h	\
	ObstacleDetection.h	\
	OffsetSystem.h	\
	OverlayLaneList.h	\
	PathHistory.h	\
	PathHistoryPointList.h	\
	PathHistoryPoint.h	\
	PathPrediction.h	\
	PivotPointDescription.h	\
	Position3D.h	\
	PositionalAccuracy.h	\
	PositionConfidenceSet.h	\
	PreemptPriorityList.h	\
	SignalControlZone.h	\
	PrivilegedEvents.h	\
	PropelledInformation.h	\
	RegionList.h	\
	RegionOffsets.h	\
	RegionPointSet.h	\
	RegulatorySpeedLimit.h	\
	RequestedItemList.h	\
	RequestorDescription.h	\
	RequestorPositionVector.h	\
	RequestorType.h	\
	RestrictionClassAssignment.h	\
	RestrictionClassList.h	\
	RestrictionUserTypeList.h	\
	RestrictionUserType.h	\
	RoadLaneSetList.h	\
	RoadSegmentList.h	\
	RoadSegmentReferenceID.h	\
	RoadSegment.h	\
	RoadSignID.h	\
	RTCMheader.h	\
	RTCMmessageList.h	\
	RTCMPackage.h	\
	Sample.h	\
	SegmentAttributeLLList.h	\
	SegmentAttributeXYList.h	\
	ShapePointSet.h	\
	SignalRequesterInfo.h	\
	SignalRequestList.h	\
	SignalRequestPackage.h	\
	SignalRequest.h	\
	SignalStatusList.h	\
	SignalStatusPackageList.h	\
	SignalStatusPackage.h	\
	SignalStatus.h	\
	SnapshotDistance.h	\
	Snapshot.h	\
	SnapshotTime.h	\
	SpecialVehicleExtensions.h	\
	SpeedandHeadingandThrottleConfidence.h	\
	SpeedLimitList.h	\
	SpeedProfileMeasurementList.h	\
	SpeedProfile.h	\
	SupplementalVehicleExtensions.h	\
	TimeChangeDetails.h	\
	TrailerData.h	\
	TrailerHistoryPointList.h	\
	TrailerHistoryPoint.h	\
	TrailerUnitDescriptionList.h	\
	TrailerUnitDescription.h	\
	TransmissionAndSpeed.h	\
	TravelerDataFrameList.h	\
	TravelerDataFrame.h	\
	ValidRegion.h	\
	VehicleClassification.h	\
	VehicleData.h	\
	VehicleIdent.h	\
	VehicleID.h	\
	VehicleSafetyExtensions.h	\
	VehicleSize.h	\
	VehicleStatusRequest.h	\
	VehicleStatusRequestList.h	\
	VehicleStatus.h	\
	VerticalOffset.h	\
	WeatherProbe.h	\
	WeatherReport.h	\
	WiperSet.h	\
	Acceleration.h	\
	AccelerationConfidence.h	\
	AdvisorySpeedType.h	\
	AllowedManeuvers.h	\
	AmbientAirPressure.h	\
	AmbientAirTemperature.h	\
	DSRC_Angle.h	\
	AnimalPropelledType.h	\
	AnimalType.h	\
	AntiLockBrakeStatus.h	\
	ApproachID.h	\
	Attachment.h	\
	AttachmentRadius.h	\
	AuxiliaryBrakeStatus.h	\
	BasicVehicleClass.h	\
	BasicVehicleRole.h	\
	BrakeAppliedPressure.h	\
	BrakeAppliedStatus.h	\
	BrakeBoostApplied.h	\
	BumperHeight.h	\
	CoarseHeading.h	\
	CodeWord.h	\
	CoefficientOfFriction.h	\
	Confidence.h	\
	Count.h	\
	DDay.h	\
	DeltaAngle.h	\
	DeltaTime.h	\
	DescriptiveName.h	\
	DHour.h	\
	DirectionOfUse.h	\
	DistanceUnits.h	\
	DMinute.h	\
	DMonth.h	\
	DOffset.h	\
	DrivenLineOffsetLg.h	\
	DrivenLineOffsetSm.h	\
	DrivingWheelAngle.h	\
	DSecond.h	\
	DSRCmsgID.h	\
	Duration.h	\
	DYear.h	\
	ElevationConfidence.h	\
	DSRC_Elevation.h	\
	Extent.h	\
	ExteriorLights.h	\
	FuelType.h	\
	FurtherInfoID.h	\
	GNSSstatus.h	\
	GrossDistance.h	\
	GrossSpeed.h	\
	HeadingConfidence.h	\
	Heading.h	\
	HeadingSlice.h	\
	IntersectionID.h	\
	IntersectionStatusObject.h	\
	IsDolly.h	\
	Iso3833VehicleType.h	\
	ITIStextPhrase.h	\
	AxleLocation.h	\
	AxleWeight.h	\
	CargoWeight.h	\
	DriveAxleLiftAirPressure.h	\
	DriveAxleLocation.h	\
	DriveAxleLubePressure.h	\
	DriveAxleTemperature.h	\
	SteeringAxleLubePressure.h	\
	SteeringAxleTemperature.h	\
	TireLeakageRate.h	\
	TireLocation.h	\
	TirePressureThresholdDetection.h	\
	TirePressure.h	\
	TireTemp.h	\
	TrailerWeight.h	\
	WheelEndElectFault.h	\
	WheelSensorStatus.h	\
	LaneAttributes-Barrier.h	\
	LaneAttributes-Bike.h	\
	LaneAttributes-Crosswalk.h	\
	LaneAttributes-Parking.h	\
	LaneAttributes-Sidewalk.h	\
	LaneAttributes-Striping.h	\
	LaneAttributes-TrackedVehicle.h	\
	LaneAttributes-Vehicle.h	\
	LaneConnectionID.h	\
	LaneDirection.h	\
	LaneID.h	\
	LaneSharing.h	\
	LaneWidth.h	\
	Latitude.h	\
	LayerID.h	\
	LayerType.h	\
	LightbarInUse.h	\
	Longitude.h	\
	Location-quality.h	\
	Location-tech.h	\
	MergeDivergeNodeAngle.h	\
	MessageBLOB.h	\
	MinuteOfTheYear.h	\
	MinutesDuration.h	\
	MotorizedPropelledType.h	\
	MovementPhaseState.h	\
	DSRC_MsgCount.h	\
	MsgCRC.h	\
	MultiVehicleResponse.h	\
	MUTCDCode.h	\
	NMEA-MsgType.h	\
	NMEA-Payload.h	\
	NMEA-Revision.h	\
	NodeAttributeLL.h	\
	NodeAttributeXY.h	\
	NumberOfParticipantsInCluster.h	\
	ObjectCount.h	\
	ObstacleDirection.h	\
	ObstacleDistance.h	\
	Offset-B09.h	\
	Offset-B10.h	\
	Offset-B11.h	\
	Offset-B12.h	\
	Offset-B13.h	\
	Offset-B14.h	\
	Offset-B16.h	\
	OffsetLL-B12.h	\
	OffsetLL-B14.h	\
	OffsetLL-B16.h	\
	OffsetLL-B18.h	\
	OffsetLL-B22.h	\
	OffsetLL-B24.h	\
	PayloadData.h	\
	PedestrianBicycleDetect.h	\
	HumanPropelledType.h	\
	PersonalAssistive.h	\
	PersonalClusterRadius.h	\
	PersonalCrossingInProgress.h	\
	PersonalCrossingRequest.h	\
	PersonalDeviceUsageState.h	\
	PersonalDeviceUserType.h	\
	PivotingAllowed.h	\
	PositionConfidence.h	\
	PrioritizationResponseStatus.h	\
	Priority.h	\
	PriorityRequestType.h	\
	PrivilegedEventFlags.h	\
	ProbeSegmentNumber.h	\
	PublicSafetyAndRoadWorkerActivity.h	\
	PublicSafetyDirectingTrafficSubType.h	\
	PublicSafetyEventResponderWorkerType.h	\
	RadiusOfCurvature.h	\
	Radius-B12.h	\
	RainSensor.h	\
	RegionId.h	\
	RequestedItem.h	\
	RequestID.h	\
	RequestImportanceLevel.h	\
	RequestSubRole.h	\
	ResponseType.h	\
	RestrictionAppliesTo.h	\
	RestrictionClassID.h	\
	RoadRegulatorID.h	\
	RoadSegmentID.h	\
	RoadwayCrownAngle.h	\
	RTCM-Revision.h	\
	RTCMmessage.h	\
	Scale-B12.h	\
	SecondOfTime.h	\
	SegmentAttributeLL.h	\
	SegmentAttributeXY.h	\
	SemiMajorAxisAccuracy.h	\
	SemiMajorAxisOrientation.h	\
	SemiMinorAxisAccuracy.h	\
	SignalGroupID.h	\
	SignalReqScheme.h	\
	SignPrority.h	\
	SirenInUse.h	\
	SpeedAdvice.h	\
	SpeedConfidence.h	\
	SpeedLimitType.h	\
	SpeedProfileMeasurement.h	\
	Speed.h	\
	SSPindex.h	\
	StabilityControlStatus.h	\
	StationID.h	\
	SteeringWheelAngleConfidence.h	\
	SteeringWheelAngleRateOfChange.h	\
	SteeringWheelAngle.h	\
	SunSensor.h	\
	TemporaryID.h	\
	TermDistance.h	\
	TermTime.h	\
	ThrottleConfidence.h	\
	ThrottlePosition.h	\
	TimeConfidence.h	\
	TimeIntervalConfidence.h	\
	DSRC_TimeMark.h	\
	TimeOffset.h	\
	TractionControlStatus.h	\
	TrailerMass.h	\
	TransitStatus.h	\
	TransitVehicleOccupancy.h	\
	TransitVehicleStatus.h	\
	TransmissionState.h	\
	TravelerInfoType.h	\
	UniqueMSGID.h	\
	URL-Base.h	\
	URL-Link.h	\
	URL-Short.h	\
	UserSizeAndBehaviour.h	\
	VehicleEventFlags.h	\
	VehicleHeight.h	\
	VehicleLength.h	\
	VehicleMass.h	\
	VehicleStatusDeviceTypeTag.h	\
	VehicleType.h	\
	VehicleWidth.h	\
	Velocity.h	\
	VerticalAccelerationThreshold.h	\
	VerticalAcceleration.h	\
	VertOffset-B07.h	\
	VertOffset-B08.h	\
	VertOffset-B09.h	\
	VertOffset-B10.h	\
	VertOffset-B11.h	\
	VertOffset-B12.h	\
	VINstring.h	\
	WaitOnStopline.h	\
	WiperRate.h	\
	WiperStatus.h	\
	YawRateConfidence.h	\
	YawRate.h	\
	ZoneLength.h	\
	Zoom.h	\
	AltitudeConfidence.h	\
	AltitudeValue.h	\
	EmissionType.h	\
	Altitude.h	\
	PrioritizationResponse.h	\
	PrioritizationResponseList.h	\
	ConnectionManeuverAssist-addGrpC.h	\
	IntersectionState-addGrpC.h	\
	MapData-addGrpC.h	\
	Position3D-addGrpC.h	\
	RestrictionUserType-addGrpC.h	\
	SignalHeadLocation.h	\
	SignalHeadLocationList.h	\
	VehicleToLanePosition.h	\
	VehicleToLanePositionList.h	\
	AddGrpB_Angle.h	\
	Day.h	\
	DayOfWeek.h	\
	DegreesLat.h	\
	DegreesLong.h	\
	AddGrpB_Elevation.h	\
	Holiday.h	\
	Hour.h	\
	LatitudeDMS.h	\
	LongitudeDMS.h	\
	MaxTimetoChange.h	\
	MinTimetoChange.h	\
	Minute.h	\
	MinutesAngle.h	\
	Month.h	\
	AddGrpB_MsgCount.h	\
	Second.h	\
	SecondsAngle.h	\
	SummerTime.h	\
	TenthSecond.h	\
	TimeRemaining.h	\
	Year.h	\
	LatitudeDMS2.h	\
	LongitudeDMS2.h	\
	Node-LLdms-48b.h	\
	Node-LLdms-80b.h	\
	LaneDataAttribute-addGrpB.h	\
	MovementEvent-addGrpB.h	\
	NodeOffsetPointXY-addGrpB.h	\
	Position3D-addGrpB.h	\
	AddGrpB_TimeMark.h	\
	EssMobileFriction.h	\
	EssPrecipRate.h	\
	EssPrecipSituation.h	\
	EssPrecipYesNo.h	\
	EssSolarRadiation.h	\
	GenericLocations.h	\
	IncidentResponseEquipment.h	\
	ITIStext.h	\
	ResponderGroupAffected.h	\
	VehicleGroupAffected.h	\
	ITIScodesAndText.h	\
	ITIScodes.h

ASN_MODULE_HEADERS+=ANY.h
ASN_MODULE_SOURCES+=ANY.c
ASN_MODULE_HEADERS+=OPEN_TYPE.h
ASN_MODULE_SOURCES+=OPEN_TYPE.c
ASN_MODULE_HEADERS+=constr_CHOICE.h
ASN_MODULE_HEADERS+=BOOLEAN.h
ASN_MODULE_SOURCES+=BOOLEAN.c
ASN_MODULE_HEADERS+=INTEGER.h
ASN_MODULE_HEADERS+=NativeEnumerated.h
ASN_MODULE_HEADERS+=IA5String.h
ASN_MODULE_SOURCES+=IA5String.c
ASN_MODULE_SOURCES+=INTEGER.c
ASN_MODULE_SOURCES+=NativeEnumerated.c
ASN_MODULE_HEADERS+=NativeInteger.h
ASN_MODULE_SOURCES+=NativeInteger.c
ASN_MODULE_HEADERS+=asn_SEQUENCE_OF.h
ASN_MODULE_SOURCES+=asn_SEQUENCE_OF.c
ASN_MODULE_HEADERS+=asn_SET_OF.h
ASN_MODULE_SOURCES+=asn_SET_OF.c
ASN_MODULE_SOURCES+=constr_CHOICE.c
ASN_MODULE_HEADERS+=constr_SEQUENCE.h
ASN_MODULE_SOURCES+=constr_SEQUENCE.c
ASN_MODULE_HEADERS+=constr_SEQUENCE_OF.h
ASN_MODULE_SOURCES+=constr_SEQUENCE_OF.c
ASN_MODULE_HEADERS+=constr_SET_OF.h
ASN_MODULE_SOURCES+=constr_SET_OF.c
ASN_MODULE_HEADERS+=asn_application.h
ASN_MODULE_SOURCES+=asn_application.c
ASN_MODULE_HEADERS+=asn_ioc.h
ASN_MODULE_HEADERS+=asn_system.h
ASN_MODULE_HEADERS+=asn_codecs.h
ASN_MODULE_HEADERS+=asn_internal.h
ASN_MODULE_HEADERS+=asn_bit_data.h
ASN_MODULE_SOURCES+=asn_bit_data.c
ASN_MODULE_HEADERS+=OCTET_STRING.h
ASN_MODULE_SOURCES+=OCTET_STRING.c
ASN_MODULE_HEADERS+=BIT_STRING.h
ASN_MODULE_SOURCES+=BIT_STRING.c
ASN_MODULE_SOURCES+=asn_codecs_prim.c
ASN_MODULE_HEADERS+=asn_codecs_prim.h
ASN_MODULE_HEADERS+=ber_tlv_length.h
ASN_MODULE_SOURCES+=ber_tlv_length.c
ASN_MODULE_HEADERS+=ber_tlv_tag.h
ASN_MODULE_SOURCES+=ber_tlv_tag.c
ASN_MODULE_HEADERS+=ber_decoder.h
ASN_MODULE_SOURCES+=ber_decoder.c
ASN_MODULE_HEADERS+=der_encoder.h
ASN_MODULE_SOURCES+=der_encoder.c
ASN_MODULE_HEADERS+=constr_TYPE.h
ASN_MODULE_SOURCES+=constr_TYPE.c
ASN_MODULE_HEADERS+=constraints.h
ASN_MODULE_SOURCES+=constraints.c
ASN_MODULE_HEADERS+=xer_support.h
ASN_MODULE_SOURCES+=xer_support.c
ASN_MODULE_HEADERS+=xer_decoder.h
ASN_MODULE_SOURCES+=xer_decoder.c
ASN_MODULE_HEADERS+=xer_encoder.h
ASN_MODULE_SOURCES+=xer_encoder.c
ASN_MODULE_HEADERS+=per_support.h
ASN_MODULE_SOURCES+=per_support.c
ASN_MODULE_HEADERS+=per_decoder.h
ASN_MODULE_SOURCES+=per_decoder.c
ASN_MODULE_HEADERS+=per_encoder.h
ASN_MODULE_SOURCES+=per_encoder.c
ASN_MODULE_HEADERS+=per_opentype.h
ASN_MODULE_SOURCES+=per_opentype.c
ASN_CONVERTER_SOURCES+=converter-sample.c
ASN_CONVERTER_SOURCES+=pdu_collection.c


lib_LTLIBRARIES=libsomething.la
libsomething_la_SOURCES=$(ASN_MODULE_SOURCES) $(ASN_MODULE_HEADERS)

# This file may be used as an input for make(3)
# Remove the lines below to convert it into a pure .am file
TARGET = j2735-dump
LIBS += -lm
CPPFLAGS += -DASN_CONVERTER_TITLE="J2735 DSRC decoder" -DHAVE_CONFIG_H -DJUNKTEST -D_DEFAULT_SOURCE  -DASN_DISABLE_OER_SUPPORT -DPDU=MessageFrame -DASN_PDU_COLLECTION -I.
OBJS=${ASN_MODULE_SOURCES:.c=.o} ${ASN_CONVERTER_SOURCES:.c=.o}

all: maybe-wip-pause MessageFrame.c $(TARGET)

$(TARGET): ${OBJS}
	$(CC) $(CFLAGS) $(CPPFLAGS) -o $(TARGET) ${OBJS} $(LDFLAGS) $(LIBS)

.SUFFIXES:
.SUFFIXES: .c .o

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

clean:
	rm -f $(TARGET)
	rm -f $(OBJS)

regen: regenerate-from-asn1-source

regenerate-from-asn1-source:
	../../asn1c/asn1c -S ../../skeletons -pdu=MessageFrame -fcompound-names -gen-PER -pdu=all ../J2735_201603.asn1


MessageFrame.c: ../sample.makefile.regen ../J2735_201603.asn1
	make regen-makefile
	@touch MessageFrame.c
	make

regen-makefile:
	TITLE="J2735 DSRC decoder" \
	ASN1CMDOPTS="-fcompound-names -gen-PER -pdu=all" \
	ASN1MODULES="../J2735_201603.asn1" \
	ASN1PDU=MessageFrame \
	PROGNAME=j2735-dump \
	CPPFLAGS="" \
	../sample.makefile.regen

check: ${TARGET} check-ber check-xer check-oer check-per
	@echo ================
	@echo All tests passed
	@echo ================

check-ber:
	@if test -f sample-MessageFrame-1.[db]er ; then \
	for f in sample-*-*.[db]er; do \
	pdu=`echo $$f | sed -E -e "s/sample-([A-Za-z0-9-]+)-[0-9].*/\1/"`; \
	for b in 1 17 33 980 8192; do \
	echo "Recoding $$f ($$pdu) into XER and back ($$b)..."; \
	./${TARGET} -p $$pdu -b $$b -iber -oxer $$f > ./.tmp.1.$$$$ || exit 2; \
	./${TARGET} -p $$pdu -b $$b -ixer -oxer ./.tmp.1.$$$$ > ./.tmp.2.$$$$ || exit 3; \
	diff ./.tmp.1.$$$$ ./.tmp.2.$$$$ || exit 4; \
	rm -f ./.tmp.[12].$$$$; \
	echo "Test junking $$f (please wait)..."; \
	./${TARGET} -J0.0001 -n 1000 -p $$pdu -b $$b -iber -onull $$f || exit 5; \
	./${TARGET} -J0.001 -n 1000 -p $$pdu -b $$b -iber -onull $$f || exit 6; \
	done; done; fi

check-xer:
	@if test -f sample-MessageFrame-1.xer ; then \
	for f in sample-*-*.xer; do \
	pdu=`echo $$f | sed -E -e "s/sample-([A-Za-z0-9-]+)-[0-9].*/\1/"`; \
	for b in 1 17 33 980 8192; do \
	echo "Recoding $$f ($$pdu) into DER and back ($$b)..."; \
	./${TARGET} -p $$pdu -b $$b -ixer -oder $$f > ./.tmp.1.$$$$ || exit 2; \
	./${TARGET} -p $$pdu -b $$b -iber -oxer ./.tmp.1.$$$$ > ./.tmp.2.$$$$ || exit 3; \
	diff $$f ./.tmp.2.$$$$ || exit 4; \
	rm -f ./.tmp.[12].$$$$; \
	echo "Test junking $$f (please wait)..."; \
	./${TARGET} -J0.0001 -n 1000 -p $$pdu -b $$b -ixer -onull $$f || exit 5; \
	./${TARGET} -J0.001 -n 1000 -p $$pdu -b $$b -ixer -onull $$f || exit 6; \
	done; done; fi

check-oer:
	@if test -f sample-MessageFrame-1.*oer ; then \
	for f in sample-*-*.*oer; do \
	pdu=`echo $$f | sed -E -e "s/sample-([A-Za-z0-9-]+)-[0-9].*/\1/"`; \
	for b in 1 17 33 980 8192; do \
	echo "Recoding $$f ($$pdu) into XER and back ($$b)..."; \
	./${TARGET} -p $$pdu -b $$b -ioer -oxer $$f > ./.tmp.1.$$$$ || exit 2; \
	./${TARGET} -p $$pdu -b $$b -ixer -ooer ./.tmp.1.$$$$ > ./.tmp.2.$$$$ || exit 3; \
	diff $$f ./.tmp.2.$$$$ || exit 4; \
	rm -f ./.tmp.[12].$$$$; \
	echo "Test junking $$f (please wait) ($$b) ..."; \
	./${TARGET} -J0.0001 -n 1000 -p $$pdu -b $$b -ioer -onull $$f || exit 5; \
	./${TARGET} -J0.001 -n 1000 -p $$pdu -b $$b -ioer -onull $$f || exit 6; \
	done; done; fi

check-per:
	@if test -f sample-MessageFrame-1.per ; then \
	for f in sample-*-[1-9].per; do \
	pdu=`echo $$f | sed -E -e "s/sample-([A-Za-z0-9-]+)-[0-9].*/\1/"`; \
	for b in 1 17 33 980 8192; do \
	echo "Recoding $$f ($$pdu) into DER into XER and back ($$b)..."; \
	./${TARGET} -p $$pdu -b $$b -iper -oder $$f > ./.tmp.1.$$$$ || exit 3; \
	./${TARGET} -p $$pdu -b $$b -iber -oxer ./.tmp.1.$$$$ > ./.tmp.2.$$$$ || exit 4; \
	./${TARGET} -p $$pdu -b $$b -ixer -oper ./.tmp.2.$$$$ > ./.tmp.1.$$$$ || exit 5; \
	diff $$f ./.tmp.1.$$$$ || exit 6; \
	rm -f ./.tmp.[12].$$$$; \
	echo "Test junking $$f (please wait)..."; \
	./${TARGET} -J0.0001 -n 1000 -p $$pdu -b $$b -iper -onull $$f || exit 7; \
	./${TARGET} -J0.001 -n 1000 -p $$pdu -b $$b -iper -onull $$f || exit 8; \
	done; done; fi

maybe-wip-pause:
	@if [ -f WIP ]; then cat WIP; sleep 2; fi

distclean: clean
	rm -f $(ASN_MODULE_SOURCES)
	rm -f $(ASN_MODULE_HEADERS)
	rm -f $(ASN_CONVERTER_SOURCES) $(ASN_CONVERTER_HEADERS)
	rm -f Makefile.am.sample