Skip to content

Commit

Permalink
Fix runtime pack directory for .c/.h/.js files
Browse files Browse the repository at this point in the history
  • Loading branch information
akoeplinger committed Nov 9, 2020
1 parent 26f1e84 commit 2eba4dd
Show file tree
Hide file tree
Showing 3 changed files with 44 additions and 21 deletions.
16 changes: 12 additions & 4 deletions eng/liveBuilds.targets
Original file line number Diff line number Diff line change
Expand Up @@ -195,10 +195,18 @@
$(LibrariesNativeArtifactsPath)dotnet.js;
$(LibrariesNativeArtifactsPath)dotnet.wasm;
$(LibrariesNativeArtifactsPath)dotnet.timezones.blat;
$(LibrariesNativeArtifactsPath)*.dat;
$(LibrariesNativeArtifactsPath)*.c;
$(LibrariesNativeArtifactsPath)*.h;
$(LibrariesNativeArtifactsPath)*.js;"
$(LibrariesNativeArtifactsPath)*.dat;"
IsNative="true" />
<LibrariesRuntimeFiles Condition="'$(TargetOS)' == 'Browser'"
Include="
$(LibrariesNativeArtifactsPath)src\*.c;
$(LibrariesNativeArtifactsPath)src\*.js;"
NativeSubDirectory="src"
IsNative="true" />
<LibrariesRuntimeFiles Condition="'$(TargetOS)' == 'Browser'"
Include="
$(LibrariesNativeArtifactsPath)include\wasm\*.h;"
NativeSubDirectory="include\wasm"
IsNative="true" />
</ItemGroup>

Expand Down
18 changes: 15 additions & 3 deletions src/mono/wasm/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ ICU_LIBDIR?=
SYSTEM_NATIVE_LIBDIR?=$(TOP)/src/libraries/Native/Unix/System.Native
ENABLE_ES6?=false

all: build-native icu-data
all: build-native icu-files source-files header-files

#
# EMSCRIPTEN SETUP
Expand Down Expand Up @@ -82,6 +82,12 @@ define InterpBuildTemplate
$(NATIVE_BIN_DIR):
mkdir -p $$@

$(NATIVE_BIN_DIR)/src:
mkdir -p $$@

$(NATIVE_BIN_DIR)/include/wasm:
mkdir -p $$@

$(BUILDS_OBJ_DIR):
mkdir -p $$@

Expand Down Expand Up @@ -119,8 +125,14 @@ clean:
# Helper targets
.PHONY: runtime

icu-data:
cp $(ICU_LIBDIR)/*.dat $(NATIVE_BIN_DIR)
icu-files: $(wildcard $(ICU_LIBDIR)/*.dat) $(ICU_LIBDIR)/libicuuc.a $(ICU_LIBDIR)/libicui18n.a | $(NATIVE_BIN_DIR)
cp $^ $(NATIVE_BIN_DIR)

source-files: runtime/driver.c runtime/pinvoke.c runtime/corebindings.c runtime/binding_support.js runtime/dotnet_support.js runtime/library_mono.js $(SYSTEM_NATIVE_LIBDIR)/pal_random.js | $(NATIVE_BIN_DIR)/src
cp $^ $(NATIVE_BIN_DIR)/src

header-files: runtime/pinvoke.h $(BUILDS_OBJ_DIR)/pinvoke-table.h | $(NATIVE_BIN_DIR)/include/wasm
cp $^ $(NATIVE_BIN_DIR)/include/wasm

build:
EMSDK_PATH=$(EMSDK_PATH) $(TOP)/build.sh mono+libs.pretest -os Browser -c $(CONFIG) /p:ContinueOnError=false /p:StopOnFirstFailure=true
Expand Down
31 changes: 17 additions & 14 deletions src/mono/wasm/wasm.proj
Original file line number Diff line number Diff line change
Expand Up @@ -93,29 +93,32 @@
<Exec Command="make -C $(MonoProjectRoot)wasm all SHELL=/bin/bash BINDIR=$(ArtifactsBinDir) MONO_BIN_DIR=$(MonoArtifactsPath) OBJDIR=$(ArtifactsObjDir) NATIVE_BIN_DIR=$(NativeBinDir) CONFIG=$(Configuration) PINVOKE_TABLE=$(WasmPInvokeTablePath) ICU_LIBDIR=$(_IcuLibdir) ENABLE_ES6=$(WasmEnableES6)"
IgnoreStandardErrorWarningFormat="true" />

<ItemGroup>
<IcuDataFiles Include="$(NativeBinDir)*.dat" />
<WasmSrcFiles Include="$(NativeBinDir)src\*.c;
$(NativeBinDir)src\*.js;" />
<WasmHeaderFiles Include="$(NativeBinDir)include\wasm\*.h" />
</ItemGroup>

<Copy SourceFiles="$(NativeBinDir)dotnet.js;
$(NativeBinDir)dotnet.wasm;
$(NativeBinDir)dotnet.timezones.blat;
$(MonoProjectRoot)wasm\runtime\driver.c;
$(MonoProjectRoot)wasm\runtime\pinvoke.c;
$(MonoProjectRoot)wasm\runtime\corebindings.c;
$(MonoProjectRoot)wasm\runtime\pinvoke.h;
$(MonoProjectRoot)wasm\runtime\binding_support.js;
$(MonoProjectRoot)wasm\runtime\dotnet_support.js;
$(MonoProjectRoot)wasm\runtime\library_mono.js;
$(LibrariesProjectRoot)Native\Unix\System.Native\pal_random.js;
$(ArtifactsObjDir)wasm\pinvoke-table.h;
$(_IcuLibdir)\libicui18n.a;
$(_IcuLibdir)\libicuuc.a"
$(NativeBinDir)libicuuc.a;
$(NativeBinDir)libicui18n.a"
DestinationFolder="$(MicrosoftNetCoreAppRuntimePackNativeDir)"
SkipUnchangedFiles="true" />

<ItemGroup>
<IcuDataFiles Include="$(NativeBinDir)*.dat"/>
</ItemGroup>
<Copy SourceFiles="@(IcuDataFiles)"
DestinationFolder="$(MicrosoftNetCoreAppRuntimePackNativeDir)"
SkipUnchangedFiles="true" />

<Copy SourceFiles="@(WasmSrcFiles)"
DestinationFolder="$(MicrosoftNetCoreAppRuntimePackNativeDir)src"
SkipUnchangedFiles="true" />

<Copy SourceFiles="@(WasmHeaderFiles)"
DestinationFolder="$(MicrosoftNetCoreAppRuntimePackNativeDir)include\wasm"
SkipUnchangedFiles="true" />
</Target>

</Project>

0 comments on commit 2eba4dd

Please sign in to comment.