implemented new code splitting mechanism (split to equal slices)
[deliverable/titan.core.git] / regression_test / preCompilerFlags / Makefile
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
7 #
8 # Contributors:
9 # Baji, Laszlo
10 # Balasko, Jeno
11 # Delic, Adam
12 # Dimitrov, Peter
13 # Kovacs, Ferenc
14 # Raduly, Csaba
15 # Szabo, Bence Janos
16 #
17 ##############################################################################
18 TOPDIR := ..
19 include $(TOPDIR)/Makefile.regression
20
21 .PHONY: all compile clean dep run
22
23 CPP = cpp
24
25 TTCN3_LIB = ttcn3$(RT2_SUFFIX)$(DYNAMIC_SUFFIX)
26
27 TTCN3_PP_MODULES = TpreCompilerFlags.ttcnpp
28 TTCN_INCLUDE_FILES = test_include.inc test_macro.inc
29
30 PREPROCESSED_TTCN = $(TTCN3_PP_MODULES:.ttcnpp=.ttcn)
31 GENERATED_SOURCES = $(PREPROCESSED_TTCN:.ttcn=.cc)
32 GENERATED_HEADERS = $(GENERATED_SOURCES:.cc=.hh)
33 ifdef CODE_SPLIT
34 GENERATED_SOURCES := $(foreach file, $(GENERATED_SOURCES:.cc=), $(addprefix $(file), .cc _seq.cc _set.cc _seqof.cc _setof.cc _union.cc))
35 else ifdef SPLIT_TO_SLICES
36 POSTFIXES := $(foreach file, $(SPLIT_TO_SLICES), $(addsuffix $(file), _part_))
37 POSTFIXES := $(foreach file, $(POSTFIXES), $(addprefix $(file), .cc))
38 GENERATED_SOURCES2 := $(foreach file, $(GENERATED_SOURCES:.cc=), $(addprefix $(file), $(POSTFIXES)))
39 GENERATED_SOURCES += $(GENERATED_SOURCES2)
40 endif
41
42 OBJECTS = $(GENERATED_SOURCES:.cc=.o)
43
44 TARGET = TpreCompilerFlags$(EXESUFFIX)
45
46 all: $(TARGET)
47
48 $(TARGET): $(GENERATED_SOURCES) $(USER_SOURCES)
49 $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(LDFLAGS) -o $@ $^ \
50 -L$(TTCN3_DIR)/lib -l$(TTCN3_LIB) \
51 -L$(OPENSSL_DIR)/lib -lcrypto $($(PLATFORM)_LIBS)
52
53 TpreCompilerFlags.ttcn: TpreCompilerFlags.ttcnpp $(TTCN_INCLUDE_FILES)
54 $(CPP) -x c -nostdinc $(USER_TTCN_CPP_FLAGS) $< TpreCompilerFlags.ttcn
55
56 $(GENERATED_SOURCES) $(GENERATED_HEADERS): compile
57 @if [ ! -f $@ ]; then rm -f compile; $(MAKE) compile; fi
58
59 compile: $(TTCN3_MODULES) $(PREPROCESSED_TTCN) $(ASN1_MODULES)
60 $(TTCN3_COMPILER) $(COMPILER_FLAGS) $^ - $?
61 touch $@
62
63 clean distclean:
64 -rm -f $(TARGET) $(OBJECTS) $(GENERATED_HEADERS) \
65 $(GENERATED_SOURCES) $(PREPROCESSED_TTCN) compile *.log
66
67 dep: $(GENERATED_SOURCES)
68 makedepend $(CPPFLAGS) $(GENERATED_SOURCES)
69
70 run: $(TARGET) config.cfg
71 ./$^
This page took 0.039743 seconds and 5 git commands to generate.