Add freetype support on web
All checks were successful
Run tests / Run tests (push) Successful in 6m53s
All checks were successful
Run tests / Run tests (push) Successful in 6m53s
This commit is contained in:
parent
2be90728ed
commit
c2196d7dc8
4 changed files with 12 additions and 3 deletions
|
|
@ -86,6 +86,9 @@ elseif(CMAKE_SYSTEM_NAME STREQUAL Emscripten)
|
|||
set(PSEMEK_PACKAGE_AS_LIBRARY OFF CACHE INTERNAL "Build applications as shared libraries")
|
||||
list(APPEND PSEMEK_DEFINITIONS "-DPSEMEK_GLES=1")
|
||||
list(APPEND PSEMEK_CXX_FLAGS -sUSE_SDL=2 -fexperimental-library)
|
||||
if(PSEMEK_USE_FREETYPE)
|
||||
list(APPEND PSEMEK_CXX_FLAGS -sUSE_FREETYPE=1)
|
||||
endif()
|
||||
# by default emcc doesn't produce catch clauses, but psemek is designed around exceptions
|
||||
list(APPEND PSEMEK_CXX_FLAGS -sDISABLE_EXCEPTION_CATCHING=0)
|
||||
if(CMAKE_BUILD_TYPE STREQUAL Debug)
|
||||
|
|
|
|||
|
|
@ -4,7 +4,10 @@ file(GLOB_RECURSE PSEMEK_FONTS_SOURCES RELATIVE "${CMAKE_CURRENT_SOURCE_DIR}" "s
|
|||
list(REMOVE_ITEM PSEMEK_FONTS_SOURCES "source/freetype.cpp")
|
||||
|
||||
if(PSEMEK_USE_FREETYPE)
|
||||
if(NOT PSEMEK_PLATFORM_WEB)
|
||||
# Emscripten provides Freetype on web
|
||||
find_package(Freetype REQUIRED)
|
||||
endif()
|
||||
list(APPEND PSEMEK_FONTS_SOURCES "source/freetype.cpp")
|
||||
endif()
|
||||
|
||||
|
|
|
|||
|
|
@ -8,7 +8,10 @@ if(PSEMEK_PACKAGE_MODE)
|
|||
set(PSEMEK_PACKAGE_LINK_FLAGS_RAW)
|
||||
|
||||
if(PSEMEK_PLATFORM_WEB)
|
||||
list(APPEND PSEMEK_PACKAGE_LINK_FLAGS_RAW -sUSE_SDL=2 -sMIN_WEBGL_VERSION=2 -sNO_DISABLE_EXCEPTION_CATCHING -sFULL_ES3 -sWASMFS -sALLOW_MEMORY_GROWTH -sGROWABLE_ARRAYBUFFERS=0 -sASYNCIFY)
|
||||
list(APPEND PSEMEK_PACKAGE_LINK_FLAGS_RAW -sUSE_SDL=2 -sUSE_FREETYPE=1 -sMIN_WEBGL_VERSION=2 -sNO_DISABLE_EXCEPTION_CATCHING -sFULL_ES3 -sWASMFS -sALLOW_MEMORY_GROWTH -sGROWABLE_ARRAYBUFFERS=0 -sASYNCIFY)
|
||||
if(PSEMEK_USE_FREETYPE)
|
||||
list(APPEND PSEMEK_PACKAGE_LINK_FLAGS_RAW -sUSE_FREETYPE=1)
|
||||
endif()
|
||||
list(APPEND PSEMEK_PACKAGE_LINK_FLAGS_RAW "-sDEFAULT_LIBRARY_FUNCS_TO_INCLUDE='$autoResumeAudioContext','$dynCall'")
|
||||
if(CMAKE_BUILD_TYPE STREQUAL Debug)
|
||||
list(APPEND PSEMEK_PACKAGE_LINK_FLAGS_RAW "-g")
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ RUN git clone --branch 6.0.2 https://github.com/emscripten-core/emsdk.git
|
|||
WORKDIR /home/emsdk
|
||||
RUN ./emsdk install 6.0.2
|
||||
RUN ./emsdk activate 6.0.2
|
||||
RUN . ./emsdk_env.sh && embuilder build sdl2 sdl2-mt
|
||||
RUN . ./emsdk_env.sh && embuilder build sdl2 sdl2-mt zlib freetype
|
||||
|
||||
WORKDIR /home
|
||||
COPY env-helper.sh .
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue