1 ##############################################################################
2 # Copyright (c) 2000-2016 Ericsson Telecom AB
3 # All rights reserved. This program and the accompanying materials
4 # are made available under the terms of the Eclipse Public License v1.0
5 # which accompanies this distribution, and is available at
6 # http://www.eclipse.org/legal/epl-v10.html
13 ##############################################################################
15 include $(TOPDIR
)/Makefile.regression
17 .SUFFIXES
: .ttcn .asn .hh
18 .PHONY
: all clean dep run
20 TTCN3_LIB
= ttcn3
$(RT2_SUFFIX
)$(DYNAMIC_SUFFIX
)
22 TTCN3_MODULES
= Types.ttcn Functions.ttcn AttributeTestcases.ttcn Testcases.ttcn SemanticCheck.ttcn
24 ASN1_MODULES
= JsonData.asn
26 GENERATED_SOURCES
= $(TTCN3_MODULES
:.ttcn
=.
cc) $(ASN1_MODULES
:.asn
=.
cc)
27 GENERATED_HEADERS
= $(GENERATED_SOURCES
:.
cc=.hh
)
29 GENERATED_SOURCES
:= $(foreach file
, $(GENERATED_SOURCES
:.
cc=), $(addprefix $(file
), .
cc _seq.
cc _set.
cc _seqof.
cc _setof.
cc _union.
cc))
30 else ifdef SPLIT_TO_SLICES
31 POSTFIXES
:= $(foreach file
, $(SPLIT_TO_SLICES
), $(addsuffix $(file
), _part_
))
32 POSTFIXES
:= $(foreach file
, $(POSTFIXES
), $(addprefix $(file
), .
cc))
33 GENERATED_SOURCES2
:= $(foreach file
, $(GENERATED_SOURCES
:.
cc=), $(addprefix $(file
), $(POSTFIXES
)))
34 GENERATED_SOURCES
+= $(GENERATED_SOURCES2
)
39 OBJECTS
= $(GENERATED_SOURCES
:.
cc=.o
) $(USER_SOURCES
:.
cc=.o
)
41 TARGET
= json
$(EXESUFFIX
)
45 $(TARGET
): $(GENERATED_SOURCES
) $(USER_SOURCES
)
46 $(CXX
) $(CPPFLAGS
) $(CXXFLAGS
) $(LDFLAGS
) -o
$@
$^
-L
$(TTCN3_DIR
)/lib
-l
$(TTCN3_LIB
) -L
$(OPENSSL_DIR
)/lib
-lcrypto
$($(PLATFORM
)_LIBS
)
50 # $(TTCN3_COMPILER) $<
52 $(GENERATED_SOURCES
) $(GENERATED_HEADERS
): compile
53 @if
[ ! -f
$@
]; then
$(RM
) compile
; $(MAKE
) compile
; fi
55 compile
: $(TTCN3_MODULES
) $(ASN1_MODULES
)
56 $(filter-out -Nold
-E
, $(TTCN3_COMPILER
)) $(COMPILER_FLAGS
) $^
60 -rm -f
$(TARGET
) $(OBJECTS
) $(GENERATED_HEADERS
) \
61 $(GENERATED_SOURCES
) *.log Makefile.bak
63 dep
: $(GENERATED_SOURCES
)
64 makedepend
$(CPPFLAGS
) $(GENERATED_SOURCES
)
66 run
: $(TARGET
) JSON.cfg
72 $(foreach src
, $(USER_SOURCES
), $(eval vpath
$(src
) $(ABS_SRC
)))