annotate generator/CMakeLists.txt @ 282:256ab6cb8e85

Signals look-up andNew syntax for connect. The old one will not work from now on. This will allow for the signals overload. Although changes are done for both D1 and D2 versions, D1 won't work because of compiler bugs. I am tired of waiting for fixes.
author eldar
date Fri, 16 Oct 2009 02:43:59 +0000
parents 5134552d97f6
children b61a413fc2f5
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
132
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
1 PROJECT(generator CXX C)
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
2 cmake_minimum_required(VERSION 2.6)
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
3 FIND_PACKAGE(Qt4 REQUIRED)
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
4
264
da7c867ef2ef 1) A bug is fixed when the generator doesn't restart if typesystem_${package}-java.java has been changed.
SokoL_SD
parents: 239
diff changeset
5 ## Hack for msvc: force Release settings
132
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
6 STRING(TOUPPER "${CMAKE_BUILD_TYPE}" build_type_upper)
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
7 set(CMAKE_CXX_FLAGS_${build_type_upper} ${CMAKE_CXX_FLAGS_RELEASE})
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
8 get_property(dir_prop DIRECTORY
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
9 PROPERTY COMPILE_DEFINITIONS_RELEASE)
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
10 set_property(DIRECTORY PROPERTY COMPILE_DEFINITIONS_${build_type_upper} ${dir_prop})
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
11
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
12 ## Sources
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
13 set(srcs
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
14 classlistgenerator.cpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
15 cppgenerator.cpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
16 cppheadergenerator.cpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
17 cppimplgenerator.cpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
18 docparser.cpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
19 generatorsetd.cpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
20 dgenerator.cpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
21 jumptable.cpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
22 metainfogenerator.cpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
23 metajavabuilder.cpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
24 qdocgenerator.cpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
25 uiconverter.cpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
26 containergenerator.cpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
27
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
28 generator.cpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
29 main.cpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
30 reporthandler.cpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
31 typeparser.cpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
32 typesystem.cpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
33 asttoxml.cpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
34 fileout.cpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
35 generatorset.cpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
36 metajava.cpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
37 customtypes.cpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
38 abstractmetabuilder.cpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
39 abstractmetalang.cpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
40 prigenerator.cpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
41
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
42 # rxx
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
43 parser/ast.cpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
44 parser/lexer.cpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
45 parser/list.cpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
46 parser/parser.cpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
47 parser/smallobject.cpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
48 parser/control.cpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
49 parser/visitor.cpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
50 parser/default_visitor.cpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
51 parser/dumptree.cpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
52 parser/tokens.cpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
53 parser/binder.cpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
54 parser/codemodel.cpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
55 parser/type_compiler.cpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
56 parser/name_compiler.cpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
57 parser/declarator_compiler.cpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
58 parser/class_compiler.cpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
59 parser/codemodel_finder.cpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
60 parser/compiler_utils.cpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
61
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
62 ## rpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
63 parser/rpp/preprocessor.cpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
64 )
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
65 ## Moc headers
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
66 set(moc_hdrs
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
67 #classlistgenerator.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
68 cppgenerator.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
69 cppheadergenerator.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
70 cppimplgenerator.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
71 #docparser.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
72 generatorsetd.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
73 dgenerator.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
74 jumptable.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
75 #metainfogenerator.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
76 #metajavabuilder.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
77 #qdocgenerator.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
78 #uiconverter.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
79 containergenerator.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
80 generator.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
81 #main.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
82 #reporthandler.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
83 #typeparser.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
84 #typesystem.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
85 #asttoxml.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
86 fileout.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
87 generatorset.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
88 #metajava.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
89 #customtypes.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
90 #abstractmetabuilder.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
91 #abstractmetalang.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
92 prigenerator.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
93
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
94 ## rxx
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
95 #parser/ast.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
96 #parser/lexer.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
97 #parser/list.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
98 #parser/parser.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
99 #parser/rxx_allocator.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
100 #parser/rpp-allocator.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
101 #parser/smallobject.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
102 #parser/tokens.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
103 #parser/symbol.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
104 #parser/control.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
105 #parser/visitor.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
106 #parser/default_visitor.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
107 #parser/dumptree.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
108 #parser/binder.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
109 #parser/codemodel.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
110 #parser/codemodel_pointer.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
111 #parser/codemodel_fwd.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
112 #parser/type_compiler.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
113 #parser/name_compiler.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
114 #parser/declarator_compiler.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
115 #parser/class_compiler.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
116 #parser/codemodel_finder.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
117 #parser/compiler_utils.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
118
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
119 # rpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
120 #parser/rpp/pp-cctype.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
121 #parser/rpp/pp-engine-bits.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
122 #parser/rpp/pp-engine.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
123 #parser/rpp/pp-environment.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
124 #parser/rpp/pp-fwd.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
125 #parser/rpp/pp-internal.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
126 #parser/rpp/pp-iterator.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
127 #parser/rpp/pp-macro-expander.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
128 #parser/rpp/pp-macro.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
129 #parser/rpp/pp-scanner.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
130 #parser/rpp/pp-string.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
131 #parser/rpp/pp-symbol.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
132 #parser/rpp/pp.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
133 #parser/rpp/preprocessor.h
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
134
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
135 )
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
136
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
137 ## Resources.
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
138 set(res_files
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
139 generator.qrc
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
140 )
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
141
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
142 #win32-msvc2005:{
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
143 # QMAKE_CXXFLAGS += -wd4996
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
144 # QMAKE_CFLAGS += -wd4996
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
145 #}
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
146
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
147 #if(MSVC)
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
148 # set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /Zm500 /Zc:wchar_t-")
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
149 #endif(MSVC)
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
150
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
151 #win32-msvc.net {
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
152 # QMAKE_CXXFLAGS += /Zm500
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
153 # QMAKE_CXXFLAGS -= -Zm200
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
154 # QMAKE_CFLAGS -= -Zm200
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
155 #}
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
156
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
157 ## Includes path.
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
158 set(inc_paths
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
159 ${CMAKE_CURRENT_SOURCE_DIR}/../common
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
160 ${CMAKE_CURRENT_SOURCE_DIR}/parser
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
161 ${CMAKE_CURRENT_SOURCE_DIR}
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
162 ${CMAKE_CURRENT_SOURCE_DIR}/parser/rpp
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
163 #${CMAKE_CURRENT_SOURCE_DIR}/parser/include
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
164 )
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
165
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
166 add_definitions(-DRXX_ALLOCATOR_INIT_0)
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
167
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
168 ## Build project
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
169 find_package (Qt4 REQUIRED)
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
170 set (QT_USE_QTMAIN true)
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
171 set (QT_USE_QTGUI false)
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
172 set (QT_USE_QTXML true)
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
173
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
174 include(${QT_USE_FILE} ${CMAKE_CURRENT_SOURCE_DIR})
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
175
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
176 set(inc_paths
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
177 ${inc_paths}
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
178 ${QT_INCLUDES}
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
179 )
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
180 set(lib_paths
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
181 ${lib_paths}
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
182 ${QT_LIBRARY_DIR}
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
183 )
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
184 set(libs
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
185 ${QT_LIBRARIES}
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
186 )
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
187
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
188 qt4_wrap_cpp(moc_srcs ${moc_hdrs})
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
189 qt4_add_resources(res_wrapped_files ${res_files})
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
190
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
191 set (all_srcs
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
192 ${srcs} ${moc_srcs}
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
193 ${res_wrapped_files})
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
194 include_directories(${inc_paths})
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
195 add_executable(generator ${all_srcs} )
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
196 target_link_libraries(generator ${libs})
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
197
264
da7c867ef2ef 1) A bug is fixed when the generator doesn't restart if typesystem_${package}-java.java has been changed.
SokoL_SD
parents: 239
diff changeset
198 ## TODO: Precompilated header works well, but I don't know a license of PCHSupport_26.cmake which
da7c867ef2ef 1) A bug is fixed when the generator doesn't restart if typesystem_${package}-java.java has been changed.
SokoL_SD
parents: 239
diff changeset
199 ## was downloaded from http://www.vtk.org/Bug/view.php?id=1260.
132
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
200 #OPTION(USEPCH "Build the project with precompiled-headers" ON)
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
201 #include(../cmake/PCHSupport_26.cmake)
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
202 #
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
203 #IF(NOT USEPCH)
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
204 # MESSAGE(STATUS "NOT using precompiled-header")
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
205 #ELSE(NOT USEPCH)
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
206 # MESSAGE(STATUS "Using precompiled-header")
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
207 # add_precompiled_header(generator ${CMAKE_CURRENT_SOURCE_DIR}/generator_pch.h)
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
208 #ENDIF(NOT USEPCH)
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
209
265
6cd923119ab1 Another attempt for supporting MacOS.
SokoL_SD
parents: 264
diff changeset
210 set(dgen_build_conf ${CMAKE_BINARY_DIR}/CMakeFiles/build.txt)
6cd923119ab1 Another attempt for supporting MacOS.
SokoL_SD
parents: 264
diff changeset
211 set(jambi_inc ${CMAKE_BINARY_DIR}/CMakeFiles/qtjambi_masterinclude.h)
6cd923119ab1 Another attempt for supporting MacOS.
SokoL_SD
parents: 264
diff changeset
212 if( NOT "${packages_in_build_txt}" STREQUAL "${packages}"
6cd923119ab1 Another attempt for supporting MacOS.
SokoL_SD
parents: 264
diff changeset
213 OR NOT EXISTS ${dgen_build_conf}
6cd923119ab1 Another attempt for supporting MacOS.
SokoL_SD
parents: 264
diff changeset
214 OR NOT EXISTS ${jambi_inc})
132
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
215 file(REMOVE ${dgen_build_conf})
265
6cd923119ab1 Another attempt for supporting MacOS.
SokoL_SD
parents: 264
diff changeset
216 file(REMOVE ${jambi_inc})
132
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
217 file(APPEND ${dgen_build_conf} "<typesystem>\n")
265
6cd923119ab1 Another attempt for supporting MacOS.
SokoL_SD
parents: 264
diff changeset
218 foreach(package_normal ${packages})
6cd923119ab1 Another attempt for supporting MacOS.
SokoL_SD
parents: 264
diff changeset
219 string(TOLOWER ${package_normal} package)
6cd923119ab1 Another attempt for supporting MacOS.
SokoL_SD
parents: 264
diff changeset
220 string(TOUPPER ${package_normal} package_upper)
132
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
221 file(APPEND ${dgen_build_conf} " <load-typesystem name=\"typesystem_${package}.xml\" generate=\"yes\" />\n")
265
6cd923119ab1 Another attempt for supporting MacOS.
SokoL_SD
parents: 264
diff changeset
222 message(STATUS "QT_${package_upper}_INCLUDE_DIR ${QT_${package_upper}_INCLUDE_DIR}")
6cd923119ab1 Another attempt for supporting MacOS.
SokoL_SD
parents: 264
diff changeset
223 file(APPEND ${jambi_inc} "#include <${QT_QT${package_upper}_INCLUDE_DIR}/Qt${package_normal}>\n")
6cd923119ab1 Another attempt for supporting MacOS.
SokoL_SD
parents: 264
diff changeset
224 endforeach(package_normal ${packages})
132
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
225 file(APPEND ${dgen_build_conf} "</typesystem>\n")
237
62d0dce52dac CMake: improvements && fixes
SokoL_SD
parents: 236
diff changeset
226 set(packages_in_build_txt ${packages} CACHE INTERNAL "")
265
6cd923119ab1 Another attempt for supporting MacOS.
SokoL_SD
parents: 264
diff changeset
227 endif( NOT "${packages_in_build_txt}" STREQUAL "${packages}"
6cd923119ab1 Another attempt for supporting MacOS.
SokoL_SD
parents: 264
diff changeset
228 OR NOT EXISTS ${dgen_build_conf}
6cd923119ab1 Another attempt for supporting MacOS.
SokoL_SD
parents: 264
diff changeset
229 OR NOT EXISTS ${jambi_inc})
132
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
230
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
231 set(gen_sources)
265
6cd923119ab1 Another attempt for supporting MacOS.
SokoL_SD
parents: 264
diff changeset
232 foreach(package_normal ${packages})
266
5134552d97f6 Bug fix for http://www.dsource.org/forums/viewtopic.php?t=4713
SokoL_SD
parents: 265
diff changeset
233 string(TOLOWER ${package_normal} package)
132
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
234 set(gen_sources ${gen_sources} ${CMAKE_SOURCE_DIR}/generator/typesystem_${package}.xml)
266
5134552d97f6 Bug fix for http://www.dsource.org/forums/viewtopic.php?t=4713
SokoL_SD
parents: 265
diff changeset
235 set(d_inc_file_found d_inc_file_found-NOTFOUND)
132
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
236 find_file(d_inc_file_found typesystem_${package}-java.java PATHS ${CMAKE_SOURCE_DIR}/generator/)
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
237 if(d_inc_file_found)
266
5134552d97f6 Bug fix for http://www.dsource.org/forums/viewtopic.php?t=4713
SokoL_SD
parents: 265
diff changeset
238 set(gen_sources ${gen_sources} ${d_inc_file_found})
132
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
239 endif(d_inc_file_found)
265
6cd923119ab1 Another attempt for supporting MacOS.
SokoL_SD
parents: 264
diff changeset
240 endforeach(package_normal ${packages})
132
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
241 mark_as_advanced(d_inc_file_found)
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
242 set(d_inc_file_found 1)
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
243
232
1db8a1da977a MacOS fix in CMake
SokoL_SD
parents: 132
diff changeset
244 if(CMAKE_HOST_WIN32)
1db8a1da977a MacOS fix in CMake
SokoL_SD
parents: 132
diff changeset
245 set(sep ";")
1db8a1da977a MacOS fix in CMake
SokoL_SD
parents: 132
diff changeset
246 else(CMAKE_HOST_WIN32)
1db8a1da977a MacOS fix in CMake
SokoL_SD
parents: 132
diff changeset
247 set(sep ":")
1db8a1da977a MacOS fix in CMake
SokoL_SD
parents: 132
diff changeset
248 endif(CMAKE_HOST_WIN32)
1db8a1da977a MacOS fix in CMake
SokoL_SD
parents: 132
diff changeset
249 foreach(path ${QT_INCLUDES})
1db8a1da977a MacOS fix in CMake
SokoL_SD
parents: 132
diff changeset
250 set(inc_paths ${path}${sep})
1db8a1da977a MacOS fix in CMake
SokoL_SD
parents: 132
diff changeset
251 endforeach(path ${QT_INCLUDES})
239
4716eaf4a67e Hack for building in a source directory
SokoL_SD
parents: 237
diff changeset
252 if(${CMAKE_BINARY_DIR} STREQUAL ${CMAKE_SOURCE_DIR})
4716eaf4a67e Hack for building in a source directory
SokoL_SD
parents: 237
diff changeset
253 set(out_dir ${CMAKE_SOURCE_DIR})
4716eaf4a67e Hack for building in a source directory
SokoL_SD
parents: 237
diff changeset
254 else(${CMAKE_BINARY_DIR} STREQUAL ${CMAKE_SOURCE_DIR})
4716eaf4a67e Hack for building in a source directory
SokoL_SD
parents: 237
diff changeset
255 set(out_dir ${CMAKE_BINARY_DIR}/build)
4716eaf4a67e Hack for building in a source directory
SokoL_SD
parents: 237
diff changeset
256 endif(${CMAKE_BINARY_DIR} STREQUAL ${CMAKE_SOURCE_DIR})
4716eaf4a67e Hack for building in a source directory
SokoL_SD
parents: 237
diff changeset
257 set(dgen_impl ${out_dir}/cpp/qt_core/ArrayOps_shell.cpp)
132
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
258 add_custom_command(OUTPUT ${dgen_impl}
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
259 COMMAND ${CMAKE_COMMAND} -E remove -f ${dgen_impl}
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
260 COMMAND "generator"
236
fcc0ada121e1 The fix from rev.236 is back
SokoL_SD
parents: 235
diff changeset
261 ARGS ${GEN_OPT} --include-paths=${inc_paths}
239
4716eaf4a67e Hack for building in a source directory
SokoL_SD
parents: 237
diff changeset
262 --output-directory=${out_dir}
132
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
263 --source-directory=${CMAKE_SOURCE_DIR}/generator
265
6cd923119ab1 Another attempt for supporting MacOS.
SokoL_SD
parents: 264
diff changeset
264 ${CMAKE_BINARY_DIR}/CMakeFiles/qtjambi_masterinclude.h
132
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
265 ${CMAKE_BINARY_DIR}/CMakeFiles/build.txt
a860544c5ee8 CMake: initial version of CMakeD script.
SokoL_SD
parents: 42
diff changeset
266 COMMENT "Generating binding..."
264
da7c867ef2ef 1) A bug is fixed when the generator doesn't restart if typesystem_${package}-java.java has been changed.
SokoL_SD
parents: 239
diff changeset
267 DEPENDS generator ${gen_sources} ${CMAKE_BINARY_DIR}/CMakeFiles/build.txt
235
b796329e8c38 We need to start cmake twice. It is necessary for getting a class list from the generator and using this list for building other parts of QtD.
SokoL_SD
parents: 232
diff changeset
268 )
b796329e8c38 We need to start cmake twice. It is necessary for getting a class list from the generator and using this list for building other parts of QtD.
SokoL_SD
parents: 232
diff changeset
269 add_custom_target(dgen ALL DEPENDS ${dgen_impl} COMMENT "")