Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Newer
Older
100644 639 lines (508 sloc) 19.305 kb
43cc089 @aristidb build: add license headers
aristidb authored
1 # vim:ts=4:sw=4:expandtab:autoindent:
2 #
1308585 copyright: note in each file that it is actually the MIT License
Aristid Breitkreuz authored
3 # The MIT License
4 #
e064ad6 @aristidb copyright: reference CONTRIBUTORS instead of listing an arbitrary par…
aristidb authored
5 # Copyright (c) 2008, 2009 Flusspferd contributors (see "CONTRIBUTORS" or
6 # http://flusspferd.org/contributors.txt)
43cc089 @aristidb build: add license headers
aristidb authored
7 #
8 # Permission is hereby granted, free of charge, to any person obtaining a copy
9 # of this software and associated documentation files (the "Software"), to deal
10 # in the Software without restriction, including without limitation the rights
11 # to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
12 # copies of the Software, and to permit persons to whom the Software is
13 # furnished to do so, subject to the following conditions:
1308585 copyright: note in each file that it is actually the MIT License
Aristid Breitkreuz authored
14 #
43cc089 @aristidb build: add license headers
aristidb authored
15 # The above copyright notice and this permission notice shall be included in
16 # all copies or substantial portions of the Software.
1308585 copyright: note in each file that it is actually the MIT License
Aristid Breitkreuz authored
17 #
43cc089 @aristidb build: add license headers
aristidb authored
18 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
19 # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
20 # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
21 # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
22 # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
23 # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
24 # THE SOFTWARE.
25 #
26
ad2ae52 @aristidb build/encodings: fixed check for iconv, also check if iconv accepts c…
aristidb authored
27 project(Flusspferd)
fc351d2 @aristidb build: add PROJECT() line
aristidb authored
28
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
29 cmake_minimum_required(VERSION 2.6)
720d7ff @aristidb build: use FindBoost module of cmake 2.6
aristidb authored
30
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
31 set(CMAKE_ALLOW_LOOSE_LOOP_CONSTRUCTS ON)
32 set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/CMakeModules)
3b76466 @aristidb build: at least improve the syntax a little bit
aristidb authored
33
1df5b0f @aristidb build: set the default build type to Debug
aristidb authored
34 if(NOT CMAKE_BUILD_TYPE)
35 set(
36 CMAKE_BUILD_TYPE
37 Debug
38 CACHE
39 STRING
40 "Choose the type of build, options are: None Debug Release RelWithDebInfo MinSizeRel."
41 FORCE)
42 endif()
43
0026e1f @aristidb win32/build: I can get cmake to configure now!
aristidb authored
44 message(STATUS "Source: ${CMAKE_SOURCE_DIR}")
45 message(STATUS "Binary: ${CMAKE_BINARY_DIR}")
46
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
47 if(${CMAKE_BINARY_DIR} STREQUAL ${CMAKE_SOURCE_DIR})
48 message(FATAL_ERROR "In-source builds are not permitted. Make a separate folder for building:\nmkdir build; cd build; cmake ..\nBefore that, remove the files that cmake just created:\nrm -rf CMakeCache.txt CMakeFiles")
49 endif()
1155c22 @aristidb build: search for boost
aristidb authored
50
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
51 set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib)
52 set(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin)
16119fc @aristidb build: set LIBRARY_ and EXECUTABLE_OUTPUT_PATH
aristidb authored
53
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
54 set(INSTALL_EXECUTABLES_PATH ${CMAKE_INSTALL_PREFIX}/bin)
55 set(INSTALL_LIBRARIES_PATH ${CMAKE_INSTALL_PREFIX}/lib)
56 set(INSTALL_LIBDATA_PATH ${CMAKE_INSTALL_PREFIX}/lib/flusspferd)
57 set(INSTALL_MODULES_PATH ${CMAKE_INSTALL_PREFIX}/lib/flusspferd/modules)
58 set(INSTALL_HEADERS_PATH ${CMAKE_INSTALL_PREFIX}/include)
59 set(INSTALL_ETC_PATH ${CMAKE_INSTALL_PREFIX}/etc)
80fc705 @aristidb build: improve installation procedure for libflusspferd and flusspfer…
aristidb authored
60
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
61 execute_process(
d4b27b6 @aristidb build: fix typo
aristidb authored
62 COMMAND "${Flusspferd_SOURCE_DIR}/flusspferd-version.sh"
63 WORKING_DIRECTORY "${Flusspferd_SOURCE_DIR}"
1c2a381 @aristidb build: cmake now recognizes flusspferd's version
aristidb authored
64 OUTPUT_VARIABLE FLUSSPFERD_VERSION
65 OUTPUT_STRIP_TRAILING_WHITESPACE)
66
489b1b3 Set default FLUSSPFERD_VERSION to 'unknown'
unknown authored
67 if(NOT FLUSSPFERD_VERSION)
68 set(FLUSSPFERD_VERSION unknown)
69 endif()
70
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
71 add_definitions("-DFLUSSPFERD_VERSION=\"${FLUSSPFERD_VERSION}\"")
72 add_definitions("-DINSTALL_PREFIX=\"${CMAKE_INSTALL_PREFIX}\"")
2b6333a @aristidb build: compile libflusspferd
aristidb authored
73
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
74 message(STATUS "Flusspferd Version " ${FLUSSPFERD_VERSION})
1c2a381 @aristidb build: cmake now recognizes flusspferd's version
aristidb authored
75
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
76 set(CMAKE_SHARED_MODULE_SUFFIX ${CMAKE_SHARED_LIBRARY_SUFFIX})
77 add_definitions("-DFLUSSPFERD_MODULE_SUFFIX=\"${CMAKE_SHARED_MODULE_SUFFIX}\"")
6b4cbd8 @aristidb build/modules: explicitly set and use module suffix, consistently
aristidb authored
78
7686863 @aristidb build: -DDEBUG for debug builds
aristidb authored
79 if(CMAKE_BUILD_TYPE STREQUAL "Debug")
80 add_definitions("-DDEBUG")
81 endif()
82
7541210 @aristidb build: longer divider comment lines
aristidb authored
83 #############################################################################
f2ba500 @aristidb build: check for POSIX
aristidb authored
84
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
85 include(CheckIncludeFile)
86 include(CheckCXXCompilerFlag)
87 include(CheckCXXSourceCompiles)
88 include(CheckCXXSourceRuns)
89 include(FindPkgConfig)
f2ba500 @aristidb build: check for POSIX
aristidb authored
90
3622957 @aristidb build: comment line was too short
aristidb authored
91 ## Compiler options #########################################################
6f5a0f4 @aristidb build: add section for compiler options
aristidb authored
92
4445d48 @aristidb Don't build tests on WIN32 by default
aristidb authored
93 if(WIN32)
94 set(_ENABLE_TESTS_DEFAULT OFF)
95 else()
96 set(_ENABLE_TESTS_DEFAULT ON)
97 endif()
98
cdf0626 @aristidb build: some plugins can now be enabled/disabled
aristidb authored
99 option(
100 ENABLE_TESTS
101 "Compile the test suite"
102 ${_ENABLE_TESTS_DEFAULT})
6e6c925 @aristidb build: build coverage-enabled flusspferd library for tests
aristidb authored
103
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
104 if(CMAKE_COMPILER_IS_GNUCXX)
105 option(ENABLE_DEBUG_WARNINGS "Enable -Wpadded and -Weffc++" OFF)
6f5a0f4 @aristidb build: add section for compiler options
aristidb authored
106
877bf9c @aristidb build: no -Wstrict-no-sentinel
aristidb authored
107 add_definitions("-pedantic-errors -Wall -Wextra"
55c6fee @aristidb build: less warnings
aristidb authored
108 "-Winit-self -Woverloaded-virtual -Wnon-virtual-dtor -Wsign-promo"
109 "-Wstrict-aliasing=1")
6f5a0f4 @aristidb build: add section for compiler options
aristidb authored
110
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
111 if(ENABLE_DEBUG_WARNINGS)
112 add_definitions("-Wpadded -Weffc++")
113 endif()
6f5a0f4 @aristidb build: add section for compiler options
aristidb authored
114
91c94af @aristidb build: remove wrong-ish space in CMakeLists.txt
aristidb authored
115 add_definitions(-DBOOST_FILESYSTEM_NO_DEPRECATED)
6f5a0f4 @aristidb build: add section for compiler options
aristidb authored
116
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
117 set(CMAKE_CXX_FLAGS_RELEASE "-O3 -DNDEBUG")
118 set(CMAKE_CXX_FLAGS_DEBUG "-g")
6f5a0f4 @aristidb build: add section for compiler options
aristidb authored
119
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
120 add_definitions("-Wno-long-long -ansi")
6f5a0f4 @aristidb build: add section for compiler options
aristidb authored
121
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
122 set(CMAKE_REQUIRED_FLAGS "")
cb17e10 @aristidb build: check GCC version
aristidb authored
123
124 check_cxx_source_compiles(
c13a525 @ashb cmake: Reduce min GCC version to 4.0 (from 4.2)
ashb authored
125 "#if __GNUC__ < 4
cb17e10 @aristidb build: check GCC version
aristidb authored
126 #error \"GCC too old\"
127 #endif
128 int main() {}"
129 GCC_VERSION_OK)
130
131 if(NOT GCC_VERSION_OK)
132 message(FATAL_ERROR "GCC Version too old! Get a newer GCC.")
133 endif()
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
134 elseif(MSVC)
135 add_definitions("/W3 /wd4512 /wd4355 /wd4800 /wd4996 /wd4714 /EHa")
136 set(WINLIBS projects/windows/lib32)
137 set(WININCLUDES ${CMAKE_SOURCE_DIR}/${WINLIBS})
138 endif()
6f5a0f4 @aristidb build: add section for compiler options
aristidb authored
139
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
140 include_directories(${Flusspferd_SOURCE_DIR}/include)
6f5a0f4 @aristidb build: add section for compiler options
aristidb authored
141
cdf0626 @aristidb build: some plugins can now be enabled/disabled
aristidb authored
142 ## Plugin options ###########################################################
143
144 option(
145 FORCE_PLUGINS
146 "Fail configuration if some enabled plugins could not be configured"
147 OFF)
59c63c0 @aristidb Revert "clean_plugins: remove 'sqlite3'"
aristidb authored
148 option(PLUGIN_SQLITE3 "Build SQLite3 plugin" ON)
cdf0626 @aristidb build: some plugins can now be enabled/disabled
aristidb authored
149 option(PLUGIN_GMP "Build GMP plugin" ON)
20f9427 @aristidb build: add LINE_EDITOR / FORCE_LINE_EDITOR options
aristidb authored
150 set(
151 LINE_EDITOR
152 "libedit"
153 CACHE
154 STRING
155 "Select the line editor (none, libedit, readline)"
156 )
157 option(
158 FORCE_LINE_EDITOR
159 "Fail configuration if the specified line editor is not available"
160 OFF)
0db0281 @ruediger build: create and install documentation
ruediger authored
161 option(CREATE_DOCUMENTATION "Create Documentation for Flusspferd" OFF)
20f9427 @aristidb build: add LINE_EDITOR / FORCE_LINE_EDITOR options
aristidb authored
162
357d9fb @ruediger build: removed ugliness introduced by last fix
ruediger authored
163 if(NOT LINE_EDITOR STREQUAL "none" AND
164 NOT LINE_EDITOR STREQUAL "libedit" AND
165 NOT LINE_EDITOR STREQUAL "readline")
166 message(FATAL_ERROR "Invalid option given for LINE_EDTIOR: ${LINE_EDITOR}")
20f9427 @aristidb build: add LINE_EDITOR / FORCE_LINE_EDITOR options
aristidb authored
167 endif()
cdf0626 @aristidb build: some plugins can now be enabled/disabled
aristidb authored
168
a89feb7 @aristidb build: actually use POSIX check for some things
aristidb authored
169 ## POSIX ####################################################################
170
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
171 check_cxx_source_runs(
a89feb7 @aristidb build: actually use POSIX check for some things
aristidb authored
172 "#include <unistd.h>
173 #include <cstdlib>
174 int main()
175 {
e783ed3 @aristidb build: allow slightly older version of POSIX
aristidb authored
176 return _POSIX_VERSION >= 199506
a89feb7 @aristidb build: actually use POSIX check for some things
aristidb authored
177 ? EXIT_SUCCESS
178 : EXIT_FAILURE;
179 }"
180 FLUSSPFERD_HAVE_POSIX)
181
7541210 @aristidb build: longer divider comment lines
aristidb authored
182 ## libdl ####################################################################
467e215 @aristidb build: find libedit
aristidb authored
183
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
184 if(FLUSSPFERD_HAVE_POSIX)
185 find_package(DL REQUIRED)
0c164d6 @ashb core/file-0: Posix only implementation of get file owner
ashb authored
186 add_definitions(-DFLUSSPFERD_HAVE_POSIX)
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
187 include_directories(${DL_INCLUDE_DIR})
188 endif()
467e215 @aristidb build: find libedit
aristidb authored
189
fb7ba40 @ashb Find and link libiconv
ashb authored
190 ## iconv ####################################################################
191
2564c8e @aristidb build: as it happens, not all filesystems are case-insensitive
aristidb authored
192 find_package(Iconv REQUIRED)
fb7ba40 @ashb Find and link libiconv
ashb authored
193
ad2ae52 @aristidb build/encodings: fixed check for iconv, also check if iconv accepts c…
aristidb authored
194 if(ICONV_ACCEPTS_NONCONST_INPUT)
195 add_definitions(-DICONV_ACCEPTS_NONCONST_INPUT)
196 endif()
197
7541210 @aristidb build: longer divider comment lines
aristidb authored
198 ## Boost ####################################################################
f2ba500 @aristidb build: check for POSIX
aristidb authored
199
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
200 set(Boost_USE_MULTITHREADED ON)
720d7ff @aristidb build: use FindBoost module of cmake 2.6
aristidb authored
201
0026e1f @aristidb win32/build: I can get cmake to configure now!
aristidb authored
202 if(WIN32)
203 set(Boost_USE_STATIC_LIBS ON)
204 endif()
205
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
206 set(Boost_FIND_REQUIRED TRUE)
672dc53 @aristidb build: enable Boost_FIND_REQUIRED
aristidb authored
207
51d8076 @aristidb build: don't search for unit_test_framework if not needed
aristidb authored
208 set(FLUSSPFERD_BOOST_LIBRARIES thread filesystem system)
209
210 if(ENABLE_TESTS)
211 set(FLUSSPFERD_BOOST_LIBRARIES
212 unit_test_framework ${FLUSSPFERD_BOOST_LIBRARIES})
213 endif()
214
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
215 find_package(Boost 1.36.0 COMPONENTS
51d8076 @aristidb build: don't search for unit_test_framework if not needed
aristidb authored
216 ${FLUSSPFERD_BOOST_LIBRARIES})
1155c22 @aristidb build: search for boost
aristidb authored
217
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
218 if(Boost_INCLUDE_DIR)
219 include_directories(${Boost_INCLUDE_DIR})
220 else()
221 message(FATAL_ERROR "Boost headers not found. You will have to specify them in your build environment or you can use -DBOOST_ROOT or -DBOOST_INCLUDE_DIR to tell cmake where your boost installation is.")
222 endif()
35ab338 @aristidb build: check for Boost include directories and libraries, with fatal …
aristidb authored
223
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
224 if(Boost_LIBRARY_DIRS)
225 link_directories(${Boost_LIBRARY_DIRS})
226 else()
227 message(FATAL_ERROR "Boost libraries not found. Please set -DBOOST_ROOT or -DBOOST_LIBRARY_DIR manually.")
228 endif()
f858932 @aristidb build: check Boost include directory
aristidb authored
229
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
230 if(NOT Boost_FOUND)
231 message(STATUS "Boost not found!")
232 endif()
f2ba500 @aristidb build: check for POSIX
aristidb authored
233
7541210 @aristidb build: longer divider comment lines
aristidb authored
234 ## Spidermonkey #############################################################
2b6333a @aristidb build: compile libflusspferd
aristidb authored
235
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
236 set(Spidermonkey_REQUIRED TRUE)
237 find_package(Spidermonkey)
b85e598 @aristidb build: add variable for spidermonkey include directory
aristidb authored
238
991b740 @aristidb build: fix potentially misleading error messages
aristidb authored
239 if(NOT SPIDERMONKEY_FOUND)
240 message(FATAL_ERROR "Spidermonkey not found")
241 endif()
242
243 if(SPIDERMONKEY_FOUND AND NOT SPIDERMONKEY_UTF8)
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
244 message(FATAL_ERROR "Spidermonkey UTF8 support required but not found")
245 endif()
72101ab @aristidb build: check spidermonkey for UTF8 support
aristidb authored
246
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
247 include_directories(${SPIDERMONKEY_INCLUDE_DIR})
248 add_definitions(${SPIDERMONKEY_DEFINITIONS})
cc021ac @aristidb build: check spidermonkey for JS_THREADSAFE
aristidb authored
249
7541210 @aristidb build: longer divider comment lines
aristidb authored
250 ## libedit ##################################################################
467e215 @aristidb build: find libedit
aristidb authored
251
20f9427 @aristidb build: add LINE_EDITOR / FORCE_LINE_EDITOR options
aristidb authored
252 if(LINE_EDITOR STREQUAL "libedit")
1a5a824 @ruediger shell: added GNU/readline support
ruediger authored
253 find_package(Libedit)
467e215 @aristidb build: find libedit
aristidb authored
254
1a5a824 @ruediger shell: added GNU/readline support
ruediger authored
255 if(LIBEDIT_FOUND)
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
256 add_definitions(-DHAVE_EDITLINE)
257 include_directories(${LIBEDIT_INCLUDE_DIR})
1a5a824 @ruediger shell: added GNU/readline support
ruediger authored
258 endif()
20f9427 @aristidb build: add LINE_EDITOR / FORCE_LINE_EDITOR options
aristidb authored
259
260 if(FORCE_LINE_EDITOR AND NOT LIBEDIT_FOUND)
261 message(SEND_ERROR "libedit required but it was not found")
262 endif()
1a5a824 @ruediger shell: added GNU/readline support
ruediger authored
263 endif()
264
265 ## GNU/readline #############################################################
266
20f9427 @aristidb build: add LINE_EDITOR / FORCE_LINE_EDITOR options
aristidb authored
267 if(LINE_EDITOR STREQUAL "readline")
ef74838 @ruediger added warning message if GNU/Readline is linked and added GNU/Readlin…
ruediger authored
268 message("WARNING: GNU/readline is GPL licensed.")
269
1a5a824 @ruediger shell: added GNU/readline support
ruediger authored
270 find_package(Readline)
271
272 if(READLINE_FOUND)
273 add_definitions(-DHAVE_READLINE)
274 include_directories(${READLINE_INCLUDE_DIR})
275 endif()
20f9427 @aristidb build: add LINE_EDITOR / FORCE_LINE_EDITOR options
aristidb authored
276
277 if(FORCE_LINE_EDITOR AND NOT READLINE_FOUND)
278 message(SEND_ERROR "readline required but it was not found")
279 endif()
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
280 endif()
467e215 @aristidb build: find libedit
aristidb authored
281
59c63c0 @aristidb Revert "clean_plugins: remove 'sqlite3'"
aristidb authored
282 ## sqlite3 ##################################################################
283
284 if(PLUGIN_SQLITE3)
285 pkg_check_modules(SQLITE3 sqlite3>=3.4.0)
286 include_directories(${SQLITE3_INCLUDE_DIRS})
287 link_directories(${SQLITE3_LIBRARY_DIRS})
288
289 if(FORCE_PLUGINS AND NOT SQLITE3_FOUND)
290 message(SEND_ERROR "SQLite3 plugin required but SQLite3 not found")
291 endif()
292 endif()
293
f626e4d @aristidb build: add gmp plugin
aristidb authored
294 ## GMP ######################################################################
295
cdf0626 @aristidb build: some plugins can now be enabled/disabled
aristidb authored
296 if(PLUGIN_GMP)
297 find_package(GMP)
298 find_package(GMPXX)
299
300 if(FORCE_PLUGINS)
301 if(NOT GMP_FOUND OR NOT GMPXX_FOUND)
302 message(SEND_ERROR "GMP plugin required but GMP/GMPXX not found")
303 endif()
304 endif()
305 endif()
f626e4d @aristidb build: add gmp plugin
aristidb authored
306
7541210 @aristidb build: longer divider comment lines
aristidb authored
307 ## Library ##################################################################
2b6333a @aristidb build: compile libflusspferd
aristidb authored
308
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
309 file(
2b6333a @aristidb build: compile libflusspferd
aristidb authored
310 GLOB
311 flusspferd_library_sources
116677c @aristidb core: move many sources to src/core/ because they are not Spidermonke…
aristidb authored
312 ${Flusspferd_SOURCE_DIR}/src/core/*.cpp
bf556b5 @aristidb io: make IO a core module
aristidb authored
313 ${Flusspferd_SOURCE_DIR}/src/spidermonkey/*.cpp
8a7e071 @ruediger build: add header files to the project
ruediger authored
314 ${Flusspferd_SOURCE_DIR}/src/io/*.cpp
315 ${Flusspferd_SOURCE_DIR}/include/*.hpp
90d2345 @ruediger build: add more header files
ruediger authored
316 ${Flusspferd_SOURCE_DIR}/include/flusspferd/*.hpp
317 ${Flusspferd_SOURCE_DIR}/include/flusspferd/io/*.hpp
318 ${Flusspferd_SOURCE_DIR}/include/flusspferd/detail/*.hpp
319 ${Flusspferd_SOURCE_DIR}/include/flusspferd/spidermonkey/*.hpp)
2b6333a @aristidb build: compile libflusspferd
aristidb authored
320
3ee8c4d Build flusspferd as a static lib for Windows
unknown authored
321 if(WIN32)
322 set(FLUSSPFERD_LIBRARY_TYPE STATIC)
323 else()
324 set(FLUSSPFERD_LIBRARY_TYPE SHARED)
325 endif()
326
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
327 add_library(
2b6333a @aristidb build: compile libflusspferd
aristidb authored
328 flusspferd
3ee8c4d Build flusspferd as a static lib for Windows
unknown authored
329 ${FLUSSPFERD_LIBRARY_TYPE}
2b6333a @aristidb build: compile libflusspferd
aristidb authored
330 ${flusspferd_library_sources})
28a56c9 @aristidb build: add shell executable
aristidb authored
331
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
332 set(
6e6c925 @aristidb build: build coverage-enabled flusspferd library for tests
aristidb authored
333 flusspferd_LIBS
872fed4 @aristidb build: add FindDL.cmake
aristidb authored
334 ${DL_LIBRARIES}
fb7ba40 @ashb Find and link libiconv
ashb authored
335 ${ICONV_LIBRARIES}
4af245f @aristidb build: move Spidermonkey search into FindSpidermonkey.cmake module
aristidb authored
336 ${SPIDERMONKEY_LIBRARIES}
720d7ff @aristidb build: use FindBoost module of cmake 2.6
aristidb authored
337 ${Boost_THREAD_LIBRARY}
338 ${Boost_FILESYSTEM_LIBRARY}
339 ${Boost_SYSTEM_LIBRARY})
13c4451 @aristidb build: find and link spidermonkey
aristidb authored
340
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
341 target_link_libraries(flusspferd ${flusspferd_LIBS})
6e6c925 @aristidb build: build coverage-enabled flusspferd library for tests
aristidb authored
342
0026e1f @aristidb win32/build: I can get cmake to configure now!
aristidb authored
343 if(NOT WIN32)
344 install(TARGETS
345 flusspferd
346 LIBRARY DESTINATION ${INSTALL_LIBRARIES_PATH})
347 endif()
80fc705 @aristidb build: improve installation procedure for libflusspferd and flusspfer…
aristidb authored
348
6e6c925 @aristidb build: build coverage-enabled flusspferd library for tests
aristidb authored
349 ## Library - coverage variant ###############################################
350
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
351 if(ENABLE_TESTS)
6e6c925 @aristidb build: build coverage-enabled flusspferd library for tests
aristidb authored
352
60aff17 @aristidb test: donot use coverage testing for now, because it only created pro…
aristidb authored
353 # The coverage library has been removed for now. It only makes it less likely
354 # for people to run the tests, which is a bigger problem than getting coverage
355 # numbers, which don't work for JS anyways.
356
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
357 # file(
1bdc8ea @aristidb build: compile tests
aristidb authored
358 # GLOB
359 # flusspferd_coverage_extra_sources
360 # ${Flusspferd_SOURCE_DIR}/src/io/*.cpp
361 # ${Flusspferd_SOURCE_DIR}/src/xml/*.cpp)
60aff17 @aristidb test: donot use coverage testing for now, because it only created pro…
aristidb authored
362 #
363 # add_library(
364 # flusspferd-coverage
365 # SHARED
366 # ${flusspferd_library_sources} ${flusspferd_coverage_extra_sources})
367 #
368 # target_link_libraries(flusspferd-coverage ${flusspferd_LIBS})
369 #
370 # set(COV_FLAGS "-fprofile-arcs -ftest-coverage")
371 #
372 # set_property(
373 # TARGET flusspferd-coverage
374 # PROPERTY COMPILE_FLAGS
375 # "${COV_FLAGS} -DFLUSSPFERD_COVERAGE")
376 #
377 # set_property(
378 # TARGET flusspferd-coverage
379 # PROPERTY LINK_FLAGS
380 # ${COV_FLAGS})
6e6c925 @aristidb build: build coverage-enabled flusspferd library for tests
aristidb authored
381
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
382 endif()
6e6c925 @aristidb build: build coverage-enabled flusspferd library for tests
aristidb authored
383
7541210 @aristidb build: longer divider comment lines
aristidb authored
384 ## Programs #################################################################
28a56c9 @aristidb build: add shell executable
aristidb authored
385
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
386 add_executable(
28a56c9 @aristidb build: add shell executable
aristidb authored
387 flusspferd-shell
388 src/programs/flusspferd.cpp)
389
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
390 set_property(
5135631 @aristidb build: rename flusspferd executable flusspferd, no longer flusspferd-…
aristidb authored
391 TARGET flusspferd-shell
392 PROPERTY OUTPUT_NAME
393 flusspferd)
394
fd02ccf @aristidb build: syntax problems
aristidb authored
395 if(NOT LINE_EDITOR STREQUAL "readline")
1a5a824 @ruediger shell: added GNU/readline support
ruediger authored
396 target_link_libraries(
28a56c9 @aristidb build: add shell executable
aristidb authored
397 flusspferd-shell
467e215 @aristidb build: find libedit
aristidb authored
398 flusspferd
399 ${LIBEDIT_LIBRARIES})
1a5a824 @ruediger shell: added GNU/readline support
ruediger authored
400 else()
401 target_link_libraries(
402 flusspferd-shell
403 flusspferd
404 ${READLINE_LIBRARIES})
405 endif()
7a357e1 @aristidb build: add flusspferd-io lib
aristidb authored
406
0026e1f @aristidb win32/build: I can get cmake to configure now!
aristidb authored
407 if(NOT WIN32)
408 install(TARGETS
409 flusspferd-shell
410 RUNTIME DESTINATION ${INSTALL_EXECUTABLES_PATH})
411 endif()
80fc705 @aristidb build: improve installation procedure for libflusspferd and flusspfer…
aristidb authored
412
1bdc8ea @aristidb build: compile tests
aristidb authored
413 ## Tests ###################################################################
414
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
415 if(ENABLE_TESTS)
1bdc8ea @aristidb build: compile tests
aristidb authored
416
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
417 file(GLOB
1bdc8ea @aristidb build: compile tests
aristidb authored
418 TESTS
90d2345 @ruediger build: add more header files
ruediger authored
419 test/test_*.cpp
420 #test/*.hpp
421 )
1bdc8ea @aristidb build: compile tests
aristidb authored
422
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
423 foreach(TEST_SOURCE ${TESTS})
424 string(REGEX MATCH "test_[a-zA-Z0-9_]*" TEST_OUTPUT ${TEST_SOURCE})
425 string(REGEX REPLACE "^test_" "" TEST_NAME TEST_OUTPUT)
426 add_executable(${TEST_OUTPUT} ${TEST_SOURCE})
427 set_property(
1bdc8ea @aristidb build: compile tests
aristidb authored
428 TARGET ${TEST_OUTPUT}
429 PROPERTY COMPILE_FLAGS
430 "-DBOOST_TEST_DYN_LINK -DBOOST_TEST_MODULE=${TEST_NAME}")
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
431 target_link_libraries(
1bdc8ea @aristidb build: compile tests
aristidb authored
432 ${TEST_OUTPUT}
433 ${Boost_UNIT_TEST_FRAMEWORK_LIBRARY}
60aff17 @aristidb test: donot use coverage testing for now, because it only created pro…
aristidb authored
434 flusspferd)
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
435 endforeach()
1bdc8ea @aristidb build: compile tests
aristidb authored
436
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
437 endif()
1bdc8ea @aristidb build: compile tests
aristidb authored
438
23315c0 @aristidb build: build os plugin
aristidb authored
439 ## Plugins #################################################################
440
59c63c0 @aristidb Revert "clean_plugins: remove 'sqlite3'"
aristidb authored
441 if(PLUGIN_SQLITE3 AND SQLITE3_FOUND)
442 set(PLUGINS ${PLUGINS} sqlite3)
443 set(sqlite3_DEFINITIONS ${SQLITE3_DEFINITIONS})
444 set(sqlite3_LIBRARIES ${SQLITE3_LIBRARIES})
445 endif()
446
cdf0626 @aristidb build: some plugins can now be enabled/disabled
aristidb authored
447 if(PLUGIN_GMP AND GMP_FOUND AND GMPXX_FOUND)
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
448 set(PLUGINS ${PLUGINS} gmp)
449 set(gmp_LIBRARIES ${GMPXX_LIBRARY} ${GMP_LIBRARY})
14b582c @aristidb build: setting the property INCLUDE_DIRECTORIES does not work
aristidb authored
450 include_directories(${GMP_INCLUDE_DIR})
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
451 endif()
f626e4d @aristidb build: add gmp plugin
aristidb authored
452
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
453 foreach(PLUGIN ${PLUGINS})
a0bdfd5 @aristidb build: more success messages (to avoid confusion if there are non-fat…
aristidb authored
454 message(STATUS "Plugin: ${PLUGIN} (will be built)")
23315c0 @aristidb build: build os plugin
aristidb authored
455
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
456 file(GLOB
856c1e5 @aristidb build: indentation
aristidb authored
457 ${PLUGIN}_sources
90d2345 @ruediger build: add more header files
ruediger authored
458 ${Flusspferd_SOURCE_DIR}/src/plugins/${PLUGIN}/*.cpp
459 ${Flusspferd_SOURCE_DIR}/src/plugins/${PLUGIN}/*.hpp)
856c1e5 @aristidb build: indentation
aristidb authored
460
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
461 add_library(${PLUGIN}_PLUGIN MODULE ${${PLUGIN}_sources})
856c1e5 @aristidb build: indentation
aristidb authored
462
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
463 set_property(
856c1e5 @aristidb build: indentation
aristidb authored
464 TARGET ${PLUGIN}_PLUGIN
465 PROPERTY OUTPUT_NAME
466 ${PLUGIN})
467
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
468 set_property(
856c1e5 @aristidb build: indentation
aristidb authored
469 TARGET ${PLUGIN}_PLUGIN
470 PROPERTY LIBRARY_OUTPUT_DIRECTORY
471 ${Flusspferd_BINARY_DIR}/modules)
472
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
473 set_property(
856c1e5 @aristidb build: indentation
aristidb authored
474 TARGET ${PLUGIN}_PLUGIN
475 PROPERTY DEFINITIONS
476 ${${PLUGIN}_DEFINITIONS})
477
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
478 target_link_libraries(
856c1e5 @aristidb build: indentation
aristidb authored
479 ${PLUGIN}_PLUGIN
480 flusspferd
481 ${${PLUGIN}_LIBRARIES})
e7bb539 @aristidb build: build plugins with a loop and into the modules/ directory
aristidb authored
482
0026e1f @aristidb win32/build: I can get cmake to configure now!
aristidb authored
483 if(NOT WIN32)
484 install(TARGETS
485 ${PLUGIN}_PLUGIN
486 LIBRARY DESTINATION ${INSTALL_MODULES_PATH})
864fc1a @aristidb build: install IO, XML and plugins
aristidb authored
487
0026e1f @aristidb win32/build: I can get cmake to configure now!
aristidb authored
488 file(GLOB
489 ${PLUGIN}_JS_FILES
490 ${Flusspferd_SOURCE_DIR}/src/plugins/${PLUGIN}/${PLUGIN}.js)
0312cd8 @aristidb build: install so much that the installed flusspferd binary works
aristidb authored
491
0026e1f @aristidb win32/build: I can get cmake to configure now!
aristidb authored
492 if(${PLUGIN}_JS_FILES)
493 install(FILES
494 ${${PLUGIN}_JS_FILES}
495 DESTINATION ${INSTALL_MODULES_PATH})
496 endif()
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
497 endif()
0312cd8 @aristidb build: install so much that the installed flusspferd binary works
aristidb authored
498
4cf0661 @aristidb build: use lower-case cmake function names
aristidb authored
499 endforeach()
0312cd8 @aristidb build: install so much that the installed flusspferd binary works
aristidb authored
500
0026e1f @aristidb win32/build: I can get cmake to configure now!
aristidb authored
501 if(NOT WIN32)
502 set(JS_PLUGINS
4a0c78b @ashb cmake: Install test harness modules
ashb authored
503 util util/array util/function util/range test test/equiv http/headers)
0312cd8 @aristidb build: install so much that the installed flusspferd binary works
aristidb authored
504
0026e1f @aristidb win32/build: I can get cmake to configure now!
aristidb authored
505 foreach(JS_PLUGIN ${JS_PLUGINS})
0312cd8 @aristidb build: install so much that the installed flusspferd binary works
aristidb authored
506
0026e1f @aristidb win32/build: I can get cmake to configure now!
aristidb authored
507 string(REGEX MATCH ".*/" ${JS_PLUGIN}_DIR ${JS_PLUGIN})
0312cd8 @aristidb build: install so much that the installed flusspferd binary works
aristidb authored
508
0026e1f @aristidb win32/build: I can get cmake to configure now!
aristidb authored
509 install(FILES
510 src/js/${JS_PLUGIN}.js
511 DESTINATION ${INSTALL_MODULES_PATH}/${${JS_PLUGIN}_DIR})
0312cd8 @aristidb build: install so much that the installed flusspferd binary works
aristidb authored
512
0026e1f @aristidb win32/build: I can get cmake to configure now!
aristidb authored
513 endforeach()
514 endif()
5c221d9 @aristidb build: install headers
aristidb authored
515
516 ## Headers ##################################################################
517
90d2345 @ruediger build: add more header files
ruediger authored
518 file(GLOB_RECURSE HEADERFILES *.hpp)
519
520 foreach(HEADER ${HEADERFILES})
521 set_source_files_properties(${HEADER}
522 PROPERTIES
523 HEADER_FILE_ONLY TRUE)
524 endforeach()
525
0026e1f @aristidb win32/build: I can get cmake to configure now!
aristidb authored
526 if(NOT WIN32)
527 install(
528 DIRECTORY include/
529 DESTINATION ${INSTALL_HEADERS_PATH}
530 FILES_MATCHING PATTERN "*.hpp")
531 endif()
0312cd8 @aristidb build: install so much that the installed flusspferd binary works
aristidb authored
532
533 ## Prelude ##################################################################
534
0026e1f @aristidb win32/build: I can get cmake to configure now!
aristidb authored
535 if(NOT WIN32)
536 install(
537 FILES src/js/prelude.js
538 DESTINATION ${INSTALL_LIBDATA_PATH})
539 endif()
0312cd8 @aristidb build: install so much that the installed flusspferd binary works
aristidb authored
540
0db0281 @ruediger build: create and install documentation
ruediger authored
541 ## Documentation ############################################################
542
543 if(NOT WIN32)
544 if(CREATE_DOCUMENTATION)
545 message(STATUS "WILL create and install documentation")
546 add_custom_target(DOCS ALL
547 COMMAND ${Flusspferd_SOURCE_DIR}/util/docs.sh
548 WORKING_DIRECTORY ${Flusspferd_SOURCE_DIR})
549 install(
550 DIRECTORY ${Flusspferd_BINARY_DIR}/html/
cb38aa1 @ruediger build: install documentation in PREFIX/share/doc/flusspferd
ruediger authored
551 DESTINATION ${CMAKE_INSTALL_PREFIX}/share/doc/flusspferd/)
0db0281 @ruediger build: create and install documentation
ruediger authored
552 endif()
553 endif()
554
0dbe02a @aristidb build: generate flusspferd.pc again
aristidb authored
555 ## Configured files##########################################################
0312cd8 @aristidb build: install so much that the installed flusspferd binary works
aristidb authored
556
0026e1f @aristidb win32/build: I can get cmake to configure now!
aristidb authored
557 if(NOT WIN32)
558 configure_file(
559 ${Flusspferd_SOURCE_DIR}/src/js/jsrepl.js.in
560 ${Flusspferd_BINARY_DIR}/js/jsrepl.js)
0312cd8 @aristidb build: install so much that the installed flusspferd binary works
aristidb authored
561
0026e1f @aristidb win32/build: I can get cmake to configure now!
aristidb authored
562 install(
563 FILES ${Flusspferd_BINARY_DIR}/js/jsrepl.js
564 DESTINATION ${INSTALL_ETC_PATH}/flusspferd)
0dbe02a @aristidb build: generate flusspferd.pc again
aristidb authored
565
0026e1f @aristidb win32/build: I can get cmake to configure now!
aristidb authored
566 set(FLUSSPFERD_EXTERNAL_CFLAGS
567 "-I${Boost_INCLUDE_DIR} -I${SPIDERMONKEY_INCLUDE_DIR}")
2b6a1b8 @aristidb fix flusspferd.pc
aristidb authored
568
0026e1f @aristidb win32/build: I can get cmake to configure now!
aristidb authored
569 foreach(_FLAG @SPIDERMONKEY_DEFINITIONS@)
570 set(FLUSSPFERD_EXTERNAL_CFLAGS "${FLUSSPFERD_EXTERNAL_CFLAGS} ${_FLAG}")
571 endforeach()
8996ed6 @aristidb build: add spidermonkey flags to flusspferd.pc
aristidb authored
572
0026e1f @aristidb win32/build: I can get cmake to configure now!
aristidb authored
573 configure_file(
574 ${Flusspferd_SOURCE_DIR}/flusspferd.pc.in
575 ${Flusspferd_BINARY_DIR}/flusspferd.pc
576 @ONLY)
0dbe02a @aristidb build: generate flusspferd.pc again
aristidb authored
577
0026e1f @aristidb win32/build: I can get cmake to configure now!
aristidb authored
578 install(
579 FILES ${Flusspferd_BINARY_DIR}/flusspferd.pc
580 DESTINATION ${CMAKE_INSTALL_PREFIX}/lib/pkgconfig)
6427216 @ruediger build: install manpage
ruediger authored
581
433a48d @ruediger build: compress manpage and install compressed manpage
ruediger authored
582 add_custom_command(
cc11618 @ruediger build: Generates manpage from flusspferd --hidden-man
ruediger authored
583 OUTPUT flusspferd.1
297e094 @ruediger build: use /dev/null as config during build
ruediger authored
584 COMMAND ${Flusspferd_BINARY_DIR}/bin/flusspferd -c /dev/null --hidden-man > ${Flusspferd_BINARY_DIR}/flusspferd.1.options
585 COMMAND ${Flusspferd_BINARY_DIR}/bin/flusspferd -c /dev/null -- ${Flusspferd_SOURCE_DIR}/util/replace-var.js --file-var OPTIONS=${Flusspferd_BINARY_DIR}/flusspferd.1.options ${Flusspferd_SOURCE_DIR}/help/flusspferd.1.in > ${Flusspferd_BINARY_DIR}/flusspferd.1
cc11618 @ruediger build: Generates manpage from flusspferd --hidden-man
ruediger authored
586 DEPENDS ${Flusspferd_SOURCE_DIR}/help/flusspferd.1.in
587 DEPENDS flusspferd-shell
588 COMMENT "Generating manpage")
589 add_custom_command(
433a48d @ruediger build: compress manpage and install compressed manpage
ruediger authored
590 OUTPUT flusspferd.1.gz
cc11618 @ruediger build: Generates manpage from flusspferd --hidden-man
ruediger authored
591 COMMAND gzip -9 -c ${Flusspferd_BINARY_DIR}/flusspferd.1 > ${Flusspferd_BINARY_DIR}/flusspferd.1.gz
592 DEPENDS flusspferd.1
433a48d @ruediger build: compress manpage and install compressed manpage
ruediger authored
593 COMMENT "Compressing manpage")
594 add_custom_target(
351e963 @ruediger build: readded the ALL option
ruediger authored
595 MANPAGE ALL
433a48d @ruediger build: compress manpage and install compressed manpage
ruediger authored
596 DEPENDS flusspferd.1.gz)
27bb56d @ruediger build: install manpage into PREFIX/share/man/ and not PREFIX/man!
ruediger authored
597 install(
598 FILES ${Flusspferd_BINARY_DIR}/flusspferd.1.gz
599 DESTINATION ${CMAKE_INSTALL_PREFIX}/share/man/man1)
433a48d @ruediger build: compress manpage and install compressed manpage
ruediger authored
600
2122f9e @ruediger bash_completion.sh is now auto generated
ruediger authored
601 add_custom_command(
602 OUTPUT bash_completion.sh
297e094 @ruediger build: use /dev/null as config during build
ruediger authored
603 COMMAND ${Flusspferd_BINARY_DIR}/bin/flusspferd -c /dev/null --hidden-bash > ${Flusspferd_BINARY_DIR}/bash_completion.impl
604 COMMAND ${Flusspferd_BINARY_DIR}/bin/flusspferd -c /dev/null -- ${Flusspferd_SOURCE_DIR}/util/replace-var.js --file-var IMPL=${Flusspferd_BINARY_DIR}/bash_completion.impl ${Flusspferd_SOURCE_DIR}/misc/bash_completion.sh.in > ${Flusspferd_BINARY_DIR}/bash_completion.sh
2122f9e @ruediger bash_completion.sh is now auto generated
ruediger authored
605 DEPENDS flusspferd-shell
606 COMMENT "Generating Bash Completion Script")
607 add_custom_target(
608 BASH_COMPLETION ALL
609 DEPENDS bash_completion.sh)
b8148bc @ruediger build: install bash_completion.sh into PREFIX/etc/bash_completion.d/
ruediger authored
610 install(
611 FILES ${Flusspferd_BINARY_DIR}/bash_completion.sh
612 DESTINATION ${CMAKE_INSTALL_PREFIX}/etc/bash_completion.d
613 RENAME flusspferd)
2122f9e @ruediger bash_completion.sh is now auto generated
ruediger authored
614
5dd5e45 @ruediger build: byte compile emacs mode
ruediger authored
615 find_program(EMACS NAMES emacs)
fa60200 @aristidb build: fix check for emacs presence
aristidb authored
616 if(NOT EMACS STREQUAL "EMACS-NOTFOUND")
617 message(STATUS "WILL install Emacs mode")
5dd5e45 @ruediger build: byte compile emacs mode
ruediger authored
618 add_custom_command(
619 OUTPUT flusspferd.elc
620 COMMAND emacs -batch -q -f batch-byte-compile ${Flusspferd_SOURCE_DIR}/misc/emacs/flusspferd.el
621 COMMAND mv ${Flusspferd_SOURCE_DIR}/misc/emacs/flusspferd.elc ${Flusspferd_BINARY_DIR}/
622 DEPENDS ${Flusspferd_SOURCE_DIR}/misc/emacs/flusspferd.el
623 COMMENT "Byte compiling Emacs code")
624 add_custom_target(
351e963 @ruediger build: readded the ALL option
ruediger authored
625 EMACS_MODE ALL
5dd5e45 @ruediger build: byte compile emacs mode
ruediger authored
626 DEPENDS flusspferd.elc)
627 install(
628 FILES ${Flusspferd_BINARY_DIR}/flusspferd.elc
8748ab0 @ruediger build: emacs mode is installed again *grml*
ruediger authored
629 DESTINATION ${CMAKE_INSTALL_PREFIX}/share/emacs/site-lisp)
5dd5e45 @ruediger build: byte compile emacs mode
ruediger authored
630 endif()
631
632 # install emacs mode source even if emacs is not found
633 install(
634 FILES ${Flusspferd_SOURCE_DIR}/misc/emacs/flusspferd.el
635 DESTINATION ${CMAKE_INSTALL_PREFIX}/share/emacs/site-lisp)
0026e1f @aristidb win32/build: I can get cmake to configure now!
aristidb authored
636 endif()
a0bdfd5 @aristidb build: more success messages (to avoid confusion if there are non-fat…
aristidb authored
637
638 message(STATUS "Configuration SUCCESSFUL. No fatal errors.")
Something went wrong with that request. Please try again.