From 216ae7db52929495c23ed847edc687dbc6bb819b Mon Sep 17 00:00:00 2001 From: ocornut Date: Tue, 30 May 2023 19:53:20 +0200 Subject: [PATCH] Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) --- .../example_sdl3_opengl3/Makefile.emscripten | 4 ++++ examples/example_sdl3_opengl3/README.md | 19 +------------------ examples/example_sdl3_opengl3/main.cpp | 2 +- 3 files changed, 6 insertions(+), 19 deletions(-) diff --git a/examples/example_sdl3_opengl3/Makefile.emscripten b/examples/example_sdl3_opengl3/Makefile.emscripten index b8c3570f7..9e9ffd603 100644 --- a/examples/example_sdl3_opengl3/Makefile.emscripten +++ b/examples/example_sdl3_opengl3/Makefile.emscripten @@ -1,3 +1,7 @@ + +# IMPORTANT: SDL3 IS IN DEVELOPMENT, AS OF 2023-05-30, EMSCRIPTEN DOESN'T SUPPORT SDL3 YET. +# WE ARE LEAVING THIS MAKEFILE AROUND FOR THE DAY IT WILL SUPPORT IT. + # # Makefile to use with SDL+emscripten # See https://emscripten.org/docs/getting_started/downloads.html diff --git a/examples/example_sdl3_opengl3/README.md b/examples/example_sdl3_opengl3/README.md index ab7f8e995..5828e4bfc 100644 --- a/examples/example_sdl3_opengl3/README.md +++ b/examples/example_sdl3_opengl3/README.md @@ -37,21 +37,4 @@ c++ `sdl3-config --cflags` -I .. -I ../.. -I ../../backends ## Emscripten -**Building** - -You need to install Emscripten from https://emscripten.org/docs/getting_started/downloads.html, and have the environment variables set, as described in https://emscripten.org/docs/getting_started/downloads.html#installation-instructions - -- Depending on your configuration, in Windows you may need to run `emsdk/emsdk_env.bat` in your console to access the Emscripten command-line tools. -- You may also refer to our [Continuous Integration setup](https://github.com/ocornut/imgui/tree/master/.github/workflows) for Emscripten setup. -- Then build using `make -f Makefile.emscripten` while in the current directory. - -**Running an Emscripten project** - -To run on a local machine: -- `make -f Makefile.emscripten serve` will use Python3 to spawn a local webserver, you can then browse http://localhost:8000 to access your build. -- Otherwise, generally you will need a local webserver. Quoting [https://emscripten.org/docs/getting_started](https://emscripten.org/docs/getting_started/Tutorial.html#generating-html):
-_"Unfortunately several browsers (including Chrome, Safari, and Internet Explorer) do not support file:// [XHR](https://emscripten.org/docs/site/glossary.html#term-xhr) requests, and can’t load extra files needed by the HTML (like a .wasm file, or packaged file data as mentioned lower down). For these browsers you’ll need to serve the files using a [local webserver](https://emscripten.org/docs/getting_started/FAQ.html#faq-local-webserver) and then open http://localhost:8000/hello.html."_ -- Emscripten SDK has a handy `emrun` command: `emrun web/index.html --browser firefox` which will spawn a temporary local webserver (in Firefox). See https://emscripten.org/docs/compiling/Running-html-files-with-emrun.html for details. -- You may use Python 3 builtin webserver: `python -m http.server -d web` (this is what `make serve` uses). -- You may use Python 2 builtin webserver: `cd web && python -m SimpleHTTPServer`. -- If you are accessing the files over a network, certain browsers, such as Firefox, will restrict Gamepad API access to secure contexts only (e.g. https only). +As of 2023-05-30 Emscripten doesn't support SDL3 yet. diff --git a/examples/example_sdl3_opengl3/main.cpp b/examples/example_sdl3_opengl3/main.cpp index 702baeff8..7875c4efa 100644 --- a/examples/example_sdl3_opengl3/main.cpp +++ b/examples/example_sdl3_opengl3/main.cpp @@ -14,7 +14,7 @@ #include #endif -// This example can also compile and run with Emscripten! See 'Makefile.emscripten' for details. +// This example doesn't compile with Emscripten yet! Awaiting SDL3 support. #ifdef __EMSCRIPTEN__ #include "../libs/emscripten/emscripten_mainloop_stub.h" #endif