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
12 ##############################################################################
14 include $(TOPDIR
)/Makefile.regression
16 .SUFFIXES
: .ttcn .asn .hh .json
17 .PHONY
: all clean dep run
19 TTCN3_LIB
= ttcn3
$(RT2_SUFFIX
)$(DYNAMIC_SUFFIX
)
21 TTCN3_MODULES
= PIPEasp_PortType.ttcn PIPEasp_Types.ttcn PIPEasp_Templates.ttcn Shell.ttcn Testcases.ttcn CompareSchemas.ttcn
25 GENERATED_SOURCES
= $(TTCN3_MODULES
:.ttcn
=.
cc) $(ASN1_MODULES
:.asn
=.
cc)
26 GENERATED_HEADERS
= $(GENERATED_SOURCES
:.
cc=.hh
)
28 GENERATED_SOURCES
:= $(foreach file
, $(GENERATED_SOURCES
:.
cc=), $(addprefix $(file
), .
cc _seq.
cc _set.
cc _seqof.
cc _setof.
cc _union.
cc))
31 USER_SOURCES
= PIPEasp_PT.
cc f_ext_import_schema.
cc
32 USER_HEADERS
= $(USER_SOURCES
:.
cc=.hh
)
34 OBJECTS
= $(GENERATED_SOURCES
:.
cc=.o
) $(USER_SOURCES
:.
cc=.o
)
36 TARGET
= ttcn2json
$(EXESUFFIX
)
38 TEMP_FILES
= General_Types.json one.json two.json three.json Main.json SubType.json
42 $(TARGET
): $(GENERATED_SOURCES
) $(USER_SOURCES
)
43 $(CXX
) $(CPPFLAGS
) $(CXXFLAGS
) $(LDFLAGS
) -o
$@
$^
-L
$(TTCN3_DIR
)/lib
-l
$(TTCN3_LIB
) -L
$(OPENSSL_DIR
)/lib
-lcrypto
$($(PLATFORM
)_LIBS
)
45 $(GENERATED_SOURCES
) $(GENERATED_HEADERS
): compile
46 @if
[ ! -f
$@
]; then
$(RM
) compile
; $(MAKE
) compile
; fi
48 compile
: $(TTCN3_MODULES
) $(ASN1_MODULES
)
49 $(filter-out -Nold
-E
, $(TTCN3_COMPILER
)) $(COMPILER_FLAGS
) $^
53 -rm -f
$(TARGET
) $(OBJECTS
) $(GENERATED_HEADERS
) \
54 $(GENERATED_SOURCES
) *.log Makefile.bak
$(TEMP_FILES
)
56 dep
: $(GENERATED_SOURCES
)
57 makedepend
$(CPPFLAGS
) $(GENERATED_SOURCES
)