cmake_minimum_required( VERSION 3.20 ) project( mtr_xr_face ) set( CMAKE_CXX_STANDARD 14 ) # Set Release as default build type if(NOT CMAKE_BUILD_TYPE) set(CMAKE_BUILD_TYPE Release) endif(NOT CMAKE_BUILD_TYPE) # Include OpenCV include_directories( /home/merligus/opencv/include ) include_directories( /home/merligus/build_js ) file( GLOB opencv_include_modules "/home/merligus/opencv/modules/*/include" ) include_directories( ${opencv_include_modules} ) set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "./output") add_executable( mtr_xr_face ../src/mtr_xr_face.cc) # OpenCV Libraries file( GLOB opencv_libs_wasm "/home/merligus/build_wasm/lib/*.a" ) target_link_libraries( mtr_xr_face ${opencv_libs_wasm} ) target_link_libraries( mtr_xr_face /home/merligus/build_wasm/3rdparty/lib/libzlib.a ) set(COMPILE_FLAGS "-Wno-missing-prototypes -flto") set_target_properties( mtr_xr_face PROPERTIES COMPILE_FLAGS ${COMPILE_FLAGS}) set(EMSCRIPTEN_LINK_FLAGS "${EMSCRIPTEN_LINK_FLAGS} -s ENVIRONMENT=web") set(EMSCRIPTEN_LINK_FLAGS "${EMSCRIPTEN_LINK_FLAGS} -s MODULARIZE") set(EMSCRIPTEN_LINK_FLAGS "${EMSCRIPTEN_LINK_FLAGS} -s EXPORTED_RUNTIME_METHODS=[ccall]") set(EMSCRIPTEN_LINK_FLAGS "${EMSCRIPTEN_LINK_FLAGS} -s WASM=1 --profiling") set(EMSCRIPTEN_LINK_FLAGS "${EMSCRIPTEN_LINK_FLAGS} -s TOTAL_MEMORY=131072000 -s ALLOW_MEMORY_GROWTH=1" ) #set(EMSCRIPTEN_LINK_FLAGS "${EMSCRIPTEN_LINK_FLAGS} -s ALLOW_MEMORY_GROWTH=1" ) set(EMSCRIPTEN_LINK_FLAGS "${EMSCRIPTEN_LINK_FLAGS} --bind -s ASSERTIONS=1 -O3 -flto") set(EMSCRIPTEN_LINK_FLAGS "${EMSCRIPTEN_LINK_FLAGS} -s NO_DISABLE_EXCEPTION_CATCHING ") set_target_properties( mtr_xr_face PROPERTIES LINK_FLAGS ${EMSCRIPTEN_LINK_FLAGS} ) # Some stuff #add_definitions("-DVL_DISABLE_AVX") #set( CMAKE_CXX_FLAGS "-Wno-unused-variable" )