Sync with 5.1.0
[deliverable/titan.core.git] / common / Makefile
1 ###############################################################################
2 # Copyright (c) 2000-2014 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 # Makefile for the common directory of the TTCN-3 Test Executor
9
10 TOP := ..
11 include $(TOP)/Makefile.cfg
12
13 TARGETS :=
14
15 # The origin of GENERATED_SOURCES
16 ORIGINATORS := pattern_la.l pattern_p.y pattern_uni.y config_preproc_la.l config_preproc_p.y
17
18 GENERATED_SOURCES := pattern_la.cc pattern_p.cc pattern_uni.cc config_preproc_la.cc config_preproc_p.tab.cc
19
20 # Sources in the CVS
21
22 STATIC_SOURCES := memory.c new.cc userinfo.c path.c config_preproc.cc Quadruple.cc Path2.cc ModuleVersion.cc JSON_Tokenizer.cc
23
24 ifndef MINGW
25 STATIC_SOURCES += NetworkHandler.cc
26 endif
27
28 ifeq ($(USAGE_STATS), yes)
29 STATIC_SOURCES += usage_stats.cc
30 endif
31
32 ifeq ($(LICENSING), yes)
33 STATIC_SOURCES += license.c
34 ifeq ($(PLATFORM), WIN32)
35 STATIC_SOURCES += hostid.c
36 TARGETS += hostid$(EXESUFFIX)
37 endif
38 ifeq ($(PLATFORM), INTERIX)
39 STATIC_SOURCES += hostid.c
40 TARGETS += hostid$(EXESUFFIX)
41 endif
42 endif
43
44 SOURCES := $(STATIC_SOURCES) $(GENERATED_SOURCES)
45
46 GENERATED_HEADERS := pattern_p.hh pattern_uni.hh config_preproc_p.tab.hh
47
48 GENERATED_OTHERS := pattern_p.output pattern_uni.output lex.backup
49
50 OBJECTS := $(patsubst %.cc,%.o,$(patsubst %.c,%.o,$(SOURCES)))
51
52 DEPFILES := $(patsubst %.cc,%.d,$(patsubst %.c,%.d,$(SOURCES)))
53
54 SUBDIRS :=
55
56 CPPFLAGS += -D_REENTRANT
57
58 ifdef REGEX_DIR
59 CPPFLAGS += -I$(REGEX_DIR)/include
60 endif
61
62 all run: $(OBJECTS) $(TARGETS)
63
64 install: $(OBJECTS) $(TARGETS)
65 ifdef MINGW
66 @echo Skipped ${CURDIR} for MinGW
67 else
68 mkdir -p $(INCDIR)
69 cp version.h memory.h platform.h ttcn3float.hh pattern.hh CharCoding.hh JSON_Tokenizer.hh $(INCDIR)
70 ifneq ($(TARGETS), )
71 ifeq ($(DEBUG), no)
72 $(STRIP) $(TARGETS)
73 endif
74 mkdir -p $(BINDIR)
75 cp $(TARGETS) $(BINDIR)
76 endif
77 endif
78
79 hostid$(EXESUFFIX): hostid.o license.o memory.o
80 $(CC) $(LDFLAGS) -o $@ $^ $(LICENSE_LIBS) $(MINGW_LIBS)
81
82 pattern_la.cc: pattern_la.l
83 $(FLEX) $(FLEXFLAGS) -o$@ $<
84
85 pattern_p.cc pattern_p.hh: pattern_p.y
86 $(BISON) $(BISONFLAGS) $<
87
88 pattern_uni.cc pattern_uni.hh: pattern_uni.y
89 $(BISON) $(BISONFLAGS) $<
90
91 config_preproc_la.cc: config_preproc_la.l
92 $(FLEX) $(FLEXFLAGS) -o$@ $<
93
94 config_preproc_p.tab.cc config_preproc_p.tab.hh: config_preproc_p.y
95 $(BISON) $(BISONFLAGS) -o config_preproc_p.tab.cc -p config_process_ $<
96
97 # Target-specific variable alteration
98 # Target-specific += causes make 3.79.1 to crash, hence this old style
99 ifdef OPENSSL_DIR
100 ifneq ($(OPENSSL_DIR), default)
101 license.o license.d: CPPFLAGS := $(CPPFLAGS) -I$(OPENSSL_DIR)/include
102 endif
103 endif
104
105 include ../Makefile.genrules
106
107
108 #vpath pattern_la.l $(ABS_SRC)
109 #vpath pattern_p.y $(ABS_SRC)
110 #vpath pattern_uni_lex.l $(ABS_SRC)
111 #vpath pattern_uni.y $(ABS_SRC)
112 #vpath config_preproc_la.l $(ABS_SRC)
113 #vpath config_preproc_p.y $(ABS_SRC)
114
115 # no vpath for GENERATED_SOURCES !
116
This page took 0.032567 seconds and 5 git commands to generate.