###############################################################################
-# Copyright (c) 2000-2014 Ericsson Telecom AB
+# Copyright (c) 2000-2016 Ericsson Telecom AB
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Eclipse Public License v1.0
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# >
+# Baji, Laszlo
+# Balasko, Jeno
+# Baranyi, Botond
+# Beres, Szabolcs
+# Delic, Adam
+# Feher, Csaba
+# Forstner, Matyas
+# Kovacs, Ferenc
+# Kremer, Peter
+# Lovassy, Arpad
+# Ormandi, Matyas
+# Pandi, Krisztian
+# Raduly, Csaba
+# Szabados, Kristof
+# Szabo, Janos Zoltan – initial implementation
+# Szalai, Endre
+# Zalanyi, Balazs Andor
+#
###############################################################################
ifndef TOP
$(error please define TOP)
# Set it to 'yes' to generate coverage data (requires DEBUG=yes)
COVERAGE := no
+# Set it to 'yes' to enable extra features for the debugger UI in single mode
+# (this requires an extra library when linking the generated code).
+# Set it to 'no' to use a simplified debugger UI.
+ADVANCED_DEBUGGER_UI := no
+
# Your platform. Allowed values: SOLARIS, SOLARIS8, LINUX, FREEBSD,
# WIN32. Decided automagically if not defined (recommended).
# PLATFORM :=
# Path of the Java Developement Kit installation
# (must be at least version 1.5.0_10)
-JDKDIR := /mnt/TTCN/Tools/jdk1.5.0_11
+JDKDIR := /usr/lib/jvm/default-java
# Path of OpenSSL installation: (always required)
OPENSSL_DIR := default
# Location of libxml2
XMLDIR := default
-## ## ## ## ## Variables below are automatically set ## ## ## ## ##
-
# Flags for the C(++) preprocessor:
# Prevent a warning about yyinput being defined but not used
-CPPFLAGS := -DYY_NO_INPUT
-ifeq ($(DEBUG), yes)
- CPPFLAGS += -DMEMORY_DEBUG -DFATAL_DEBUG
-else
- CPPFLAGS += -DNDEBUG
-endif
-
-# MingW flags need to be passed to the preprocessor during ctags configure
-CPPFLAGS += $(MINGW)
-
+CPPFLAGS += -DYY_NO_INPUT
# Flags shared between C and C++
COMPILERFLAGS := -Wall
# Flags for the C compiler.
# std=gnu9x shuts up warnings about long long and variadic macros
-CCFLAGS = $(COMPILERFLAGS) -std=gnu9x
+CCFLAGS += $(COMPILERFLAGS) -std=gnu9x
+
+# Flags for the C++ compiler:
+CXXFLAGS += $(COMPILERFLAGS) -Wno-long-long
+
+# The command for maintaining static libraries:
+AR := ar
+
+# The command for building the shared libraries:
+# It shall be set to either "$(CXX) -G" or "$(CXX) -shared" depending
+# on the linker you use.
+LD = $(CXX) -shared
+
+# Flags for linking binary executables (e.g. for profiling):
+LDFLAGS += $(MINGW)
+
+# The command for removing symbol table from the executables:
+STRIP := strip
+
+# Flags for flex:
+FLEXFLAGS := -B -s -Cr
+
+# Flags for bison:
+BISONFLAGS := -d
+
+# Override common settings with personal preferences if needed
+-include $(TOP)/Makefile.personal
+
+## ## ## ## ## Variables below are automatically set ## ## ## ## ##
+
+ifeq ($(DEBUG), yes)
+ CPPFLAGS += -DMEMORY_DEBUG -DFATAL_DEBUG
+else
+ CPPFLAGS += -DNDEBUG
+endif
+
+# MingW flags need to be passed to the preprocessor during ctags configure
+CPPFLAGS += $(MINGW)
+
ifeq ($(DEBUG), yes)
CCFLAGS += -g
CCFLAGS += -Wshadow -Wpointer-arith -Wcast-qual -Wcast-align \
-Wstrict-prototypes
+else
+ifeq ($(COVERAGE), yes)
+ CCFLAGS += -O0
else
CCFLAGS += -O2
endif
-
-# Flags for the C++ compiler:
-CXXFLAGS = $(COMPILERFLAGS) -Wno-long-long
+endif
# Only the default Cygwin compiler can be used for Mingw.
# Its version is 3.4.4, too low.
ifeq ($(DEBUG), yes)
CXXFLAGS += -g
CXXFLAGS += -Wshadow -Wpointer-arith -Wcast-qual -Wcast-align
+else
+ifeq ($(COVERAGE), yes)
+ CXXFLAGS += -O0
else
CXXFLAGS += -O2
endif
+endif
# Flags for the C/C++ compilers to generate dependency list (-M or -MM
# for gcc or clang, -xM or -xM1 for Sun C compiler).
CXXDEPFLAG := -xM1
endif
-# The command for maintaining static libraries:
-AR := ar
-
-# The command for building the shared libraries:
-# It shall be set to either "$(CXX) -G" or "$(CXX) -shared" depending
-# on the linker you use.
-LD = $(CXX) -shared
-
-# Flags for linking binary executables (e.g. for profiling):
-LDFLAGS = $(MINGW)
ifeq ($(DEBUG), yes)
LDFLAGS += -g
endif
-# The command for removing symbol table from the executables:
-STRIP := strip
-# Flags for flex:
-FLEXFLAGS := -B -s -Cr
ifeq ($(DEBUG), yes)
FLEXFLAGS += -b -p
# FLEXFLAGS += -d
FLEXFLAGS += -Cfe
endif
-# Flags for bison:
-BISONFLAGS := -d
+
ifeq ($(DEBUG), yes)
BISONFLAGS += -t -v
endif
ifeq ($(COVERAGE), yes)
-ifneq ($(DEBUG), yes)
- $(error TURN ON DEBUG MODE FOR COVERAGE)
-else
CPPFLAGS += -DCOVERAGE_BUILD
COMPILERFLAGS += -fprofile-arcs -ftest-coverage
LDFLAGS += -fprofile-arcs -ftest-coverage -lgcov
endif
+
+ifeq ($(ADVANCED_DEBUGGER_UI), yes)
+ CPPFLAGS += -DADVANCED_DEBUGGER_UI
endif
# Directory which contains the code for POSIX regular expression handling.
# or installed.
TEXPATH := /usr/local/teTeX2.0.2/bin/sparc-sun-solaris2.8
-# Override common settings with personal preferences if needed
--include $(TOP)/Makefile.personal
###########################################################################
# You don't have to alter anything below this line.