diff --git a/.github/workflows/web.yml b/.github/workflows/web.yml index 145d4b4b..3adf0517 100644 --- a/.github/workflows/web.yml +++ b/.github/workflows/web.yml @@ -13,7 +13,7 @@ env: jobs: linux-emscripten: - runs-on: ubuntu-latest + runs-on: emscripten/emsdk steps: - uses: actions/checkout@v2 @@ -26,8 +26,8 @@ jobs: # path: /home/runner/.hunter # key: ${{ runner.os }}-mobagen - - name: Emscripten Install - run: ./scripts/emscripten-install.sh || true +# - name: Emscripten Install +# run: ./scripts/emscripten-install.sh || true - name: Emscripten Build run: ./scripts/emscripten-build.sh diff --git a/CMakeLists.txt b/CMakeLists.txt index ffc47064..675b01c0 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.23.2) +cmake_minimum_required(VERSION 3.16.3) # CPM downloader include(external/cpm.cmake) @@ -30,8 +30,10 @@ IF(EMSCRIPTEN) # SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} --preload-file ${CMAKE_CURRENT_SOURCE_DIR}/assets/ -s WASM=0 -s DISABLE_EXCEPTION_CATCHING=2 --proxy-to-worker -s FETCH=1") # SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} --preload-file ${CMAKE_CURRENT_SOURCE_DIR}/assets/") - SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O0 -s WASM=0 -s FULL_ES2=1 -s USE_SDL=0 -s EXPORT_ALL=1") - SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O0 -s WASM=0 -s FULL_ES2=1 -s USE_SDL=0 -s EXPORT_ALL=1") +# SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O0 -s WASM=0 -s FULL_ES2=1 -s USE_SDL=0 -s EXPORT_ALL=1") +# SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O0 -s WASM=0 -s FULL_ES2=1 -s USE_SDL=0 -s EXPORT_ALL=1") + SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -s USE_SDL=0 -s EXPORT_ALL=1") + SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -s USE_SDL=0 -s EXPORT_ALL=1") add_definitions(-DASSET_DIR="${CMAKE_CURRENT_SOURCE_DIR}/assets/") diff --git a/core2/CMakeLists.txt b/core2/CMakeLists.txt deleted file mode 100644 index e69de29b..00000000 diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 00000000..a16d0ca7 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,11 @@ +version: "3" +services: + emsdk: + container_name: mobagen-emsdk + image: emscripten/emsdk + working_dir: /usr/src/mobagen + ports: + - "8000:8000" + volumes: + - .:/usr/src/mobagen + command: ./scripts/emscripten-build-and-run.sh diff --git a/external/CMakeLists.txt b/external/CMakeLists.txt index bc49695f..b1478a19 100644 --- a/external/CMakeLists.txt +++ b/external/CMakeLists.txt @@ -1,4 +1,4 @@ -include(filament.cmake) + if(COMMAND cmake_policy) cmake_policy(SET CMP0003 NEW) endif(COMMAND cmake_policy) @@ -30,9 +30,10 @@ ENDIF() add_definitions(-DHAVE_LIBC=OFF) +#include(filament.cmake) include(sdl.cmake) include(glm.cmake) #include(glew.cmake) include(imgui.cmake) include(assimp.cmake) -include(bullet.cmake) \ No newline at end of file +include(bullet.cmake) diff --git a/scripts/emscripten-build-and-run.sh b/scripts/emscripten-build-and-run.sh index b0aa2e32..fc7d5e3f 100755 --- a/scripts/emscripten-build-and-run.sh +++ b/scripts/emscripten-build-and-run.sh @@ -12,6 +12,8 @@ cd $DIRECTORY cd $DIRECTORY/../bin-emscripten/bin -open "http://localhost:8000" +#open "http://localhost:8000" + +echo hosting build at http://localhost:8000 python3 -m http.server diff --git a/scripts/emscripten-build.sh b/scripts/emscripten-build.sh index 934fc02c..ec472c0b 100755 --- a/scripts/emscripten-build.sh +++ b/scripts/emscripten-build.sh @@ -4,11 +4,15 @@ DIRECTORY="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" mkdir -p "${DIRECTORY}"/../bin-emscripten/bin/ -cd $DIRECTORY/../external/emsdk - -source ./emsdk_env.sh - -export EMSCRIPTEN=${EMSDK}/upstream/emscripten +if which emcmake >/dev/null; then + echo emsdk exists in path +else + echo installing emsdk + ./emscripten-install.sh + cd $DIRECTORY/../external/emsdk + source ./emsdk_env.sh + export EMSCRIPTEN=${EMSDK}/upstream/emscripten +fi cd $DIRECTORY/../