In hindsight my emscripten-ifdef (70d416a8f63f) is nonsense.
As fpcrtl_glShaderSource() would not be defined and lead to compiling issues.
So either it's 3 ifdefs (in pas2cRedo, pas2cSystem and misc.c),
in order to toggle between fpcrtl_ and the native function,
or alternatively have no ifdef for it at all.
I'm going with none at all,
which means emscripten will compile with the original (const) function prototype,
being wrapped by the fpcrtl_ function, same as non-emscripten builds.
# - Try to find the Clang/LLVM executable
# Once done this will define
#
# EMSCRIPTEN_FOUND - system has Clang
# EMSCRIPTEN_VERSION - Clang version
# EMSCRIPTEN_EXECUTABLE - Clang executable
#
# Copyright (c) 2013, Vittorio Giovara <vittorio.giovara@gmail.com>
#
# Redistribution and use is allowed according to the terms of the BSD license.
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
find_program(EMSCRIPTEN_EXECUTABLE
NAMES emcc
PATHS /opt/local/bin /usr/local/bin /usr/bin)
if (EMSCRIPTEN_EXECUTABLE)
execute_process(COMMAND ${EMSCRIPTEN_EXECUTABLE} -v
OUTPUT_VARIABLE EMSCRIPTEN_VERSION_OUTPUT
ERROR_VARIABLE EMSCRIPTEN_VERSION_ERROR
RESULT_VARIABLE EMSCRIPTEN_VERSION_RESULT
OUTPUT_STRIP_TRAILING_WHITESPACE
)
if(${EMSCRIPTEN_VERSION_RESULT} EQUAL 0)
string(REGEX MATCH "[0-9]+\\.[0-9]+\\.[0-9]+" EMSCRIPTEN_VERSION "${EMSCRIPTEN_VERSION_OUTPUT}")
string(REGEX REPLACE "([0-9]+\\.[0-9]+\\.[0-9]+)" "\\1" EMSCRIPTEN_VERSION "${EMSCRIPTEN_VERSION}")
else()
message(SEND_ERROR "Command \"${EMSCRIPTEN_EXECUTABLE} --version\" failed with output: ${EMSCRIPTEN_VERSION_ERROR}")
endif()
endif()
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(Emscripten DEFAULT_MSG EMSCRIPTEN_EXECUTABLE EMSCRIPTEN_VERSION)
mark_as_advanced(EMSCRIPTEN_VERSION)