Skip to content

Commit 28451a7

Browse files
clover2123ksh8281
authored andcommitted
Update Walrus module
* fix build error Signed-off-by: HyukWoo Park <[email protected]>
1 parent 5a52380 commit 28451a7

File tree

6 files changed

+17
-8
lines changed

6 files changed

+17
-8
lines changed

.github/workflows/es-actions.yml

+5-5
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ jobs:
2929
steps:
3030
- uses: actions/checkout@v4
3131
with:
32-
submodules: true
32+
submodules: recursive
3333
- name: Install Packages
3434
run: |
3535
brew update
@@ -100,7 +100,7 @@ jobs:
100100
steps:
101101
- uses: actions/checkout@v4
102102
with:
103-
submodules: true
103+
submodules: recursive
104104
- name: Install Packages
105105
run: |
106106
sudo apt-get update
@@ -157,7 +157,7 @@ jobs:
157157
sdk: "10.0.20348.0"
158158
- name: Build ${{ matrix.arch.cpu }} Release
159159
run: |
160-
CMake -DCMAKE_SYSTEM_NAME=Windows -DCMAKE_SYSTEM_VERSION:STRING="10.0" -DCMAKE_SYSTEM_PROCESSOR=${{ matrix.arch.cpu }} -Bout/ -DESCARGOT_OUTPUT=shell -DESCARGOT_LIBICU_SUPPORT=ON -DESCARGOT_LIBICU_SUPPORT_WITH_DLOPEN=NO -DESCARGOT_WASM=ON -DESCARGOT_THREADING=ON -DESCARGOT_TCO=ON -DESCARGOT_TEST=ON -G Ninja -DCMAKE_C_COMPILER=clang-cl -DCMAKE_CXX_COMPILER=clang-cl -DCMAKE_BUILD_TYPE=release -DCMAKE_C_FLAGS="${{ matrix.arch.flag }}" -DCMAKE_CXX_FLAGS="${{ matrix.arch.flag }}"
160+
CMake -DCMAKE_SYSTEM_NAME=Windows -DCMAKE_SYSTEM_VERSION:STRING="10.0" -DCMAKE_SYSTEM_PROCESSOR=${{ matrix.arch.cpu }} -Bout/ -DESCARGOT_OUTPUT=shell -DESCARGOT_LIBICU_SUPPORT=ON -DESCARGOT_LIBICU_SUPPORT_WITH_DLOPEN=NO -DESCARGOT_THREADING=ON -DESCARGOT_TCO=ON -DESCARGOT_TEST=ON -G Ninja -DCMAKE_C_COMPILER=clang-cl -DCMAKE_CXX_COMPILER=clang-cl -DCMAKE_BUILD_TYPE=release -DCMAKE_C_FLAGS="${{ matrix.arch.flag }}" -DCMAKE_CXX_FLAGS="${{ matrix.arch.flag }}"
161161
CMake --build out/ --config Release
162162
- name: Run octane
163163
run: |
@@ -187,7 +187,7 @@ jobs:
187187
git config --global core.eol lf
188188
- uses: actions/checkout@v4
189189
with:
190-
submodules: true
190+
submodules: recursive
191191
- uses: szenius/[email protected]
192192
with:
193193
timezoneWindows: "Pacific Standard Time"
@@ -559,7 +559,7 @@ jobs:
559559
steps:
560560
- uses: actions/checkout@v4
561561
with:
562-
submodules: true
562+
submodules: recursive
563563
- name: Install Packages
564564
run: |
565565
sudo apt-get update

CMakeLists.txt

-2
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,6 @@ PROJECT (ESCARGOT)
44

55
# CONFIGURATION
66
SET (CMAKE_VERBOSE_MAKEFILE true)
7-
# so(dll)s are should placed on CMAKE_BINARY_DIR
8-
SET (CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR})
97
SET (CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR})
108

119
MESSAGE(STATUS "CMAKE_SYSTEM_NAME: " ${CMAKE_SYSTEM_NAME})

build/escargot.cmake

+1
Original file line numberDiff line numberDiff line change
@@ -142,6 +142,7 @@ IF (ESCARGOT_WASM)
142142
SET (WALRUS_ARCH ${ESCARGOT_ARCH})
143143
SET (WALRUS_MODE ${ESCARGOT_MODE})
144144
SET (WALRUS_OUTPUT "shared_lib")
145+
SET (WALRUS_WASI OFF) # WASI should be OFF
145146

146147
IF (${ESCARGOT_MODE} STREQUAL "release")
147148
SET (WALRUS_CXXFLAGS ${WALRUS_CXXFLAGS} ${ESCARGOT_CXXFLAGS_RELEASE})

src/api/EscargotPublic.cpp

+9
Original file line numberDiff line numberDiff line change
@@ -2348,6 +2348,15 @@ bool ObjectRef::setPrototype(ExecutionStateRef* state, ValueRef* value)
23482348
return toImpl(this)->setPrototype(*toImpl(state), toImpl(value));
23492349
}
23502350

2351+
bool ObjectRef::setObjectPrototype(ExecutionStateRef* state, ValueRef* value)
2352+
{
2353+
// explicitly call Object::setPrototype
2354+
// could be used for initialization of __proto__to avoid ImmutablePrototypeObject::setPrototype
2355+
// should not be ProxyObject because ProxyObject has it's own setPrototype method
2356+
ASSERT(!toImpl(this)->isProxyObject());
2357+
return toImpl(this)->Object::setPrototype(*toImpl(state), toImpl(value));
2358+
}
2359+
23512360
StringRef* ObjectRef::constructorName(ExecutionStateRef* state)
23522361
{
23532362
return toRef(toImpl(this)->constructorName(*toImpl(state)));

src/api/EscargotPublic.h

+1
Original file line numberDiff line numberDiff line change
@@ -1399,6 +1399,7 @@ class ESCARGOT_EXPORT ObjectRef : public PointerValueRef {
13991399
ValueRef* getPrototype(ExecutionStateRef* state);
14001400
OptionalRef<ObjectRef> getPrototypeObject(ExecutionStateRef* state); // if __proto__ is not object(undefined or null), this function returns nullptr instead of orginal value.
14011401
bool setPrototype(ExecutionStateRef* state, ValueRef* value);
1402+
bool setObjectPrototype(ExecutionStateRef* state, ValueRef* value); // explicitly call Object::setPrototype
14021403

14031404
StringRef* constructorName(ExecutionStateRef* state);
14041405

third_party/walrus

Submodule walrus updated 214 files

0 commit comments

Comments
 (0)