Skip to content

Commit 239b6dd

Browse files
committed
Updated profiles and raylib game with wasm support
1 parent 23e9dc6 commit 239b6dd

File tree

17 files changed

+90
-203
lines changed

17 files changed

+90
-203
lines changed

examples/cross_build/emscripten/bindings/conanfile.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
from conan import ConanFile
22
from conan.tools.cmake import CMake, CMakeDeps, CMakeToolchain, cmake_layout
3+
from conan.errors import ConanInvalidConfiguration
34

45

56
class WasmExampleRecipe(ConanFile):
@@ -16,6 +17,10 @@ def requirements(self):
1617
self.requires("zlib/1.3.1")
1718
self.requires("fmt/11.1.4")
1819

20+
def validate(self):
21+
if self.settings.os != "Emscripten":
22+
raise ConanInvalidConfiguration("This example is only supported on Emscripten.")
23+
1924
def generate(self):
2025
deps = CMakeDeps(self)
2126
deps.generate()

examples/cross_build/emscripten/profiles/asmjs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
include(base)
1+
include(./emsdk-base)
22

33
[settings]
44
arch=asm.js
Lines changed: 5 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,21 @@
11
# Note: this profile uses emsdk package from Conan Center Index
2-
# To use a local emsdk installation could be done by:
3-
# a) Define a platform_tool_requires ensuring CC, CXX, etc are defined correctly in PATH
4-
# [platform_tool_requires]
5-
# emsdk/<version>
6-
# b) Define compiler_executables
7-
# tools.build:compiler_executables={'c':'emcc', 'cpp':'em++'}
8-
# c) Define buildenv
9-
# [buildenv]
10-
# CC=<path/to/emcc>
11-
# CXX=<path/to/em++>
12-
# AR ..
2+
# To use a local emsdk installation use -pr:h <wasm32/wasm64/asmjs> -pr:h emsdk-native
133

144
[settings]
155
build_type=Release
166
compiler=emcc
177
compiler.cppstd=17
188
compiler.libcxx=libc++
19-
compiler.version=4.0.9
9+
compiler.version=4.0.10
2010
os=Emscripten
2111

2212
[tool_requires]
23-
emsdk/4.0.9
13+
emsdk/4.0.10
2414
ninja/[*]
2515

2616
[conf]
27-
tools.build:exelinkflags=['-sALLOW_MEMORY_GROWTH=1']
28-
tools.build:sharedlinkflags=['-sALLOW_MEMORY_GROWTH=1']
17+
tools.build:exelinkflags+=['-sALLOW_MEMORY_GROWTH=1']
18+
tools.build:sharedlinkflags+=['-sALLOW_MEMORY_GROWTH=1']
2919

3020
# Set Ninja as default generator as it is faster and will sove issues on Windows
3121
tools.cmake.cmaketoolchain:generator=Ninja
@@ -36,4 +26,3 @@ tools.compilation:verbosity=verbose
3626

3727
# Distinguish between architectures
3828
tools.cmake.cmake_layout:build_folder_vars=['settings.build_type', 'settings.arch']
39-
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
include(./emsdk-base)
2+
3+
[platform_tool_requires]
4+
emsdk/4.0.10
5+
6+
[conf]
7+
tools.build:compiler_executables={'c':'emcc', 'cpp':'em++'}
8+
9+
[buildenv]
10+
CC=emcc
11+
CXX=em++
12+
AR=emar
13+
NM=emnm
14+
RANLIB=emranlib
15+
STRIP=emstrip
Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
1-
include(base)
1+
include(./emsdk-base)
22

33
[settings]
44
arch=wasm
55

66
[conf]
77
tools.build:exelinkflags+=['-sMAXIMUM_MEMORY=4GB', '-sINITIAL_MEMORY=64MB']
88
tools.build:sharedlinkflags+=['-sMAXIMUM_MEMORY=4GB', '-sINITIAL_MEMORY=64MB']
9+
10+
#tools.build:exelinkflags+=['-sMIN_NODE_VERSION=230000']
Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,13 @@
1-
include(base)
1+
include(./emsdk-base)
22

33
[settings]
44
arch=wasm64
55

66
[conf]
77
# In this early stage of wasm64, ALLOW_MEMORY_GROWTH is not having effect. Also it may not be the most efficient solution.
88
# wasm64 for now needs to declare INITIAL_MEMORY as the maximum memory
9-
tools.build:exelinkflags+=['-sMAXIMUM_MEMORY=16GB', '-sINITIAL_MEMORY=16GB']
10-
tools.build:sharedlinkflags+=['-sMAXIMUM_MEMORY=16GB', '-sINITIAL_MEMORY=16GB']
9+
tools.build:exelinkflags+=['-sMAXIMUM_MEMORY=16GB', '-sINITIAL_MEMORY=16GB', '-sASSERTIONS']
10+
tools.build:sharedlinkflags+=['-sMAXIMUM_MEMORY=16GB', '-sINITIAL_MEMORY=16GB', '-sASSERTIONS']
11+
12+
#tools.build:exelinkflags+=['-sMIN_NODE_VERSION=221600']
13+
#tools.build:sharedlinkflags+=['-sMIN_NODE_VERSION=221600']

examples/cross_build/emscripten/wasm_game/CMakeLists.txt

Lines changed: 0 additions & 13 deletions
This file was deleted.

examples/cross_build/emscripten/wasm_game/README.md

Lines changed: 0 additions & 18 deletions
This file was deleted.

examples/cross_build/emscripten/wasm_game/ci_test_example.py

Lines changed: 0 additions & 8 deletions
This file was deleted.

examples/cross_build/emscripten/wasm_game/conanfile.py

Lines changed: 0 additions & 27 deletions
This file was deleted.

0 commit comments

Comments
 (0)