implemented new code splitting mechanism (split to equal slices)
[deliverable/titan.core.git] / regression_test / negativeTest / Makefile
CommitLineData
d44e3c4f 1##############################################################################
2# Copyright (c) 2000-2016 Ericsson Telecom AB
970ed795
EL
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
d44e3c4f 7#
8# Contributors:
9# Balasko, Jeno
10# Baranyi, Botond
11# Delic, Adam
12# Raduly, Csaba
13# Szabados, Kristof
14e21cff 14# Szabo, Bence Janos
d44e3c4f 15#
16##############################################################################
970ed795
EL
17ifeq "$(MAKELEVEL)" "0"
18# not recursive
19RT2:=1
20endif
21
22TOPDIR := ..
23include $(TOPDIR)/Makefile.regression
24
25#ony works with RT2
26ifndef RT2
27$(error note: negativTest requires RT2)
28endif
29
30.PHONY: all clean dep run
31.SUFFIXES: .d
32
33CXXFLAGS += -Wall -Wextra -Wshadow -g
34CXXDEPFLAGS := -MM
35
36#COMPILER_FLAGS +=
a38c6d4c 37#LDFLAGS += -rdynamic
970ed795
EL
38
39TTCN3_LIB = ttcn3$(RT2_SUFFIX)$(DYNAMIC_SUFFIX)
40
41TTCN3_MODULES = negtest.ttcn NegTestTestcases.ttcn \
42NegTest_TEXT_Types.ttcn NegTest_TEXT_Testcases.ttcn \
43NegTest_RAW_Types.ttcn NegTest_RAW_Testcases.ttcn \
3f84031e 44www_XmlTest_org_negativeTest_XML_Types.ttcn NegTest_XML_Testcases.ttcn XSD.ttcn UsefulTtcn3Types.ttcn \
45NegTest_JSON.ttcn
970ed795
EL
46
47ASN1_MODULES = Types.asn NegTestTypes.asn
48
49GENERATED_SOURCES = $(TTCN3_MODULES:.ttcn=.cc) $(ASN1_MODULES:.asn=.cc)
50GENERATED_HEADERS = $(TTCN3_MODULES:.ttcn=.hh) $(ASN1_MODULES:.asn=.hh)
51ifdef CODE_SPLIT
52GENERATED_SOURCES := $(foreach file, $(GENERATED_SOURCES:.cc=), $(addprefix $(file), .cc _seq.cc _set.cc _seqof.cc _setof.cc _union.cc))
14e21cff 53else ifdef SPLIT_TO_SLICES
54POSTFIXES := $(foreach file, $(SPLIT_TO_SLICES), $(addsuffix $(file), _part_))
55POSTFIXES := $(foreach file, $(POSTFIXES), $(addprefix $(file), .cc))
56GENERATED_SOURCES2 := $(foreach file, $(GENERATED_SOURCES:.cc=), $(addprefix $(file), $(POSTFIXES)))
57GENERATED_SOURCES += $(GENERATED_SOURCES2)
970ed795
EL
58endif
59
60USER_SOURCES =
61USER_HEADERS =
62
63OBJECTS = $(GENERATED_SOURCES:.cc=.o) $(USER_SOURCES:.cc=.o)
64DEPS := $(OBJECTS:.o=.d)
65
66TARGET = negtest$(EXESUFFIX)
67
68all: $(TARGET)
69
70$(TARGET): $(OBJECTS)
71 $(CXX) $(LDFLAGS) -o $@ $(OBJECTS) -L$(TTCN3_DIR)/lib -l$(TTCN3_LIB) \
72 -L$(OPENSSL_DIR)/lib -lcrypto $($(PLATFORM)_LIBS)
73
74.cc.o:
75 $(CXX) -c $(CPPFLAGS) $(CXXFLAGS) $<
76
77.cc.d .c.d:
78 @echo Creating dependency file for '$<'; set -e; \
79 $(CXX) $(CXXDEPFLAGS) $(CPPFLAGS) $(CXXFLAGS) $< \
80 | sed 's/\($*\)\.o[ :]*/\1.o $@ : /g' > $@; \
81 [ -s $@ ] || rm -f $@
82
83$(GENERATED_SOURCES) $(GENERATED_HEADERS): compile
84 @if [ ! -f $@ ]; then $(RM) compile; $(MAKE) compile; fi
85
86compile: $(TTCN3_MODULES) $(ASN1_MODULES)
87 $(filter-out -Nold -E, $(TTCN3_COMPILER)) $(COMPILER_FLAGS) $^
88 touch compile
89
90clean distclean:
91 -rm -f $(TARGET) $(OBJECTS) $(GENERATED_HEADERS) \
92 $(GENERATED_SOURCES) compile *.log *~ core
93
94dep: $(DEPS) ;
95# makedepend $(CPPFLAGS) $(USER_SOURCES) $(GENERATED_SOURCES)
96
97run: $(TARGET)
98 ./$(TARGET) NegTest_all.cfg
99
100
101run1: $(TARGET)
102 ./$(TARGET) NegTest.cfg
103
104run2: $(TARGET)
105 ./$(TARGET) config.cfg
106
107run3: $(TARGET)
108 ./$(TARGET) NegTest_TEXT.cfg
109
110run4: $(TARGET)
111 ./$(TARGET) NegTest_XML.cfg
112
113run5: $(TARGET)
114 ./$(TARGET) NegTest_RAW.cfg || perl -nwle 'if (/->(\w+\.ttcn:\d+)->.*? (.*fail.*)/) { print STDERR "$$1: note: $$2" }' NegTest_RAW.log
115 perl -i -pwle 's/!/\n/g' NegTest_RAW.log
116
3f84031e 117run6: $(TARGET)
118 ./$(TARGET) NegTest_JSON.cfg
119
970ed795
EL
120
121ifeq ($(findstring n,$(MAKEFLAGS)),)
122ifeq ($(filter clean check compile archive diag,$(MAKECMDGOALS)),)
123-include $(DEPFILES)
124endif
125endif
This page took 0.030829 seconds and 5 git commands to generate.