Skip to content

Commit dc31b46

Browse files
authored
Move back to C++14 (#2358)
Since the waterfall's CMake was too old to target C++17 and many LTS systems may not yet support C++17. Also updates the minimum required CMake version to one that mentions the CXX_STANDARD variable in its docs.
1 parent ed2c3cd commit dc31b46

File tree

1 file changed

+12
-12
lines changed

1 file changed

+12
-12
lines changed

CMakeLists.txt

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
PROJECT(binaryen C CXX)
2-
CMAKE_MINIMUM_REQUIRED(VERSION 2.8.7)
2+
CMAKE_MINIMUM_REQUIRED(VERSION 3.1.3)
33
INCLUDE(GNUInstallDirs)
44

55
IF(NOT CMAKE_BUILD_TYPE)
@@ -131,7 +131,7 @@ ELSE()
131131
SET(THREADS_PREFER_PTHREAD_FLAG ON)
132132
SET(CMAKE_THREAD_PREFER_PTHREAD ON)
133133
FIND_PACKAGE(Threads REQUIRED)
134-
ADD_CXX_FLAG("-std=c++17")
134+
ADD_CXX_FLAG("-std=c++14")
135135
if (NOT EMSCRIPTEN)
136136
if (CMAKE_SYSTEM_PROCESSOR MATCHES "^i.86$")
137137
# wasm doesn't allow for x87 floating point math
@@ -213,7 +213,7 @@ SET(wasm-shell_SOURCES
213213
ADD_EXECUTABLE(wasm-shell
214214
${wasm-shell_SOURCES})
215215
TARGET_LINK_LIBRARIES(wasm-shell wasm asmjs emscripten-optimizer passes ir cfg support wasm)
216-
SET_PROPERTY(TARGET wasm-shell PROPERTY CXX_STANDARD 17)
216+
SET_PROPERTY(TARGET wasm-shell PROPERTY CXX_STANDARD 14)
217217
SET_PROPERTY(TARGET wasm-shell PROPERTY CXX_STANDARD_REQUIRED ON)
218218
INSTALL(TARGETS wasm-shell DESTINATION ${CMAKE_INSTALL_BINDIR})
219219

@@ -223,7 +223,7 @@ SET(wasm-opt_SOURCES
223223
ADD_EXECUTABLE(wasm-opt
224224
${wasm-opt_SOURCES})
225225
TARGET_LINK_LIBRARIES(wasm-opt wasm asmjs emscripten-optimizer passes ir cfg support wasm)
226-
SET_PROPERTY(TARGET wasm-opt PROPERTY CXX_STANDARD 17)
226+
SET_PROPERTY(TARGET wasm-opt PROPERTY CXX_STANDARD 14)
227227
SET_PROPERTY(TARGET wasm-opt PROPERTY CXX_STANDARD_REQUIRED ON)
228228
INSTALL(TARGETS wasm-opt DESTINATION ${CMAKE_INSTALL_BINDIR})
229229

@@ -233,7 +233,7 @@ SET(wasm-metadce_SOURCES
233233
ADD_EXECUTABLE(wasm-metadce
234234
${wasm-metadce_SOURCES})
235235
TARGET_LINK_LIBRARIES(wasm-metadce wasm asmjs emscripten-optimizer passes ir cfg support wasm)
236-
SET_PROPERTY(TARGET wasm-metadce PROPERTY CXX_STANDARD 17)
236+
SET_PROPERTY(TARGET wasm-metadce PROPERTY CXX_STANDARD 14)
237237
SET_PROPERTY(TARGET wasm-metadce PROPERTY CXX_STANDARD_REQUIRED ON)
238238
INSTALL(TARGETS wasm-metadce DESTINATION bin)
239239

@@ -243,7 +243,7 @@ SET(asm2wasm_SOURCES
243243
ADD_EXECUTABLE(asm2wasm
244244
${asm2wasm_SOURCES})
245245
TARGET_LINK_LIBRARIES(asm2wasm emscripten-optimizer passes wasm asmjs ir cfg support)
246-
SET_PROPERTY(TARGET asm2wasm PROPERTY CXX_STANDARD 17)
246+
SET_PROPERTY(TARGET asm2wasm PROPERTY CXX_STANDARD 14)
247247
SET_PROPERTY(TARGET asm2wasm PROPERTY CXX_STANDARD_REQUIRED ON)
248248
INSTALL(TARGETS asm2wasm DESTINATION ${CMAKE_INSTALL_BINDIR})
249249

@@ -253,7 +253,7 @@ SET(wasm2js_SOURCES
253253
ADD_EXECUTABLE(wasm2js
254254
${wasm2js_SOURCES})
255255
TARGET_LINK_LIBRARIES(wasm2js passes wasm asmjs emscripten-optimizer ir cfg support)
256-
SET_PROPERTY(TARGET wasm2js PROPERTY CXX_STANDARD 17)
256+
SET_PROPERTY(TARGET wasm2js PROPERTY CXX_STANDARD 14)
257257
SET_PROPERTY(TARGET wasm2js PROPERTY CXX_STANDARD_REQUIRED ON)
258258
INSTALL(TARGETS wasm2js DESTINATION ${CMAKE_INSTALL_BINDIR})
259259

@@ -263,7 +263,7 @@ SET(wasm-emscripten-finalize_SOURCES
263263
ADD_EXECUTABLE(wasm-emscripten-finalize
264264
${wasm-emscripten-finalize_SOURCES})
265265
TARGET_LINK_LIBRARIES(wasm-emscripten-finalize passes wasm asmjs ir cfg support)
266-
SET_PROPERTY(TARGET wasm-emscripten-finalize PROPERTY CXX_STANDARD 17)
266+
SET_PROPERTY(TARGET wasm-emscripten-finalize PROPERTY CXX_STANDARD 14)
267267
SET_PROPERTY(TARGET wasm-emscripten-finalize PROPERTY CXX_STANDARD_REQUIRED ON)
268268
INSTALL(TARGETS wasm-emscripten-finalize DESTINATION ${CMAKE_INSTALL_BINDIR})
269269

@@ -273,7 +273,7 @@ SET(wasm_as_SOURCES
273273
ADD_EXECUTABLE(wasm-as
274274
${wasm_as_SOURCES})
275275
TARGET_LINK_LIBRARIES(wasm-as wasm asmjs passes ir cfg support wasm)
276-
SET_PROPERTY(TARGET wasm-as PROPERTY CXX_STANDARD 17)
276+
SET_PROPERTY(TARGET wasm-as PROPERTY CXX_STANDARD 14)
277277
SET_PROPERTY(TARGET wasm-as PROPERTY CXX_STANDARD_REQUIRED ON)
278278
INSTALL(TARGETS wasm-as DESTINATION ${CMAKE_INSTALL_BINDIR})
279279

@@ -283,7 +283,7 @@ SET(wasm_dis_SOURCES
283283
ADD_EXECUTABLE(wasm-dis
284284
${wasm_dis_SOURCES})
285285
TARGET_LINK_LIBRARIES(wasm-dis passes wasm asmjs ir cfg support)
286-
SET_PROPERTY(TARGET wasm-dis PROPERTY CXX_STANDARD 17)
286+
SET_PROPERTY(TARGET wasm-dis PROPERTY CXX_STANDARD 14)
287287
SET_PROPERTY(TARGET wasm-dis PROPERTY CXX_STANDARD_REQUIRED ON)
288288
INSTALL(TARGETS wasm-dis DESTINATION ${CMAKE_INSTALL_BINDIR})
289289

@@ -293,7 +293,7 @@ SET(wasm-ctor-eval_SOURCES
293293
ADD_EXECUTABLE(wasm-ctor-eval
294294
${wasm-ctor-eval_SOURCES})
295295
TARGET_LINK_LIBRARIES(wasm-ctor-eval emscripten-optimizer passes wasm asmjs ir cfg support)
296-
SET_PROPERTY(TARGET wasm-ctor-eval PROPERTY CXX_STANDARD 17)
296+
SET_PROPERTY(TARGET wasm-ctor-eval PROPERTY CXX_STANDARD 14)
297297
SET_PROPERTY(TARGET wasm-ctor-eval PROPERTY CXX_STANDARD_REQUIRED ON)
298298
INSTALL(TARGETS wasm-ctor-eval DESTINATION bin)
299299

@@ -303,7 +303,7 @@ SET(wasm-reduce_SOURCES
303303
ADD_EXECUTABLE(wasm-reduce
304304
${wasm-reduce_SOURCES})
305305
TARGET_LINK_LIBRARIES(wasm-reduce wasm asmjs passes wasm ir cfg support)
306-
SET_PROPERTY(TARGET wasm-reduce PROPERTY CXX_STANDARD 17)
306+
SET_PROPERTY(TARGET wasm-reduce PROPERTY CXX_STANDARD 14)
307307
SET_PROPERTY(TARGET wasm-reduce PROPERTY CXX_STANDARD_REQUIRED ON)
308308
INSTALL(TARGETS wasm-reduce DESTINATION ${CMAKE_INSTALL_BINDIR})
309309

0 commit comments

Comments
 (0)