-
Notifications
You must be signed in to change notification settings - Fork 16
/
Copy pathlocal_pipeline.dot
70 lines (58 loc) · 2.77 KB
/
local_pipeline.dot
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
@startdot
digraph CMake {
rankdir=TD;
subgraph clusterLinux {
color=black;
label = "Host";
node [shape=note, style="rounded,filled", color=black, fillcolor=royalblue];
SWIG [label="foo.i", fillcolor=white];
subgraph clusterCPP {
color=royalblue;
label = "C++";
node [shape=note, style="rounded,filled", color=black, fillcolor=royalblue];
PKG [label="C++ dev packages\ne.g. cmake, g++", shape=box3d];
CPP [label="Foo.hpp/Foo.cpp"];
LIB [label="libFoo.so\nruntimes/linux-x64/native/", shape=component];
WRAPPER_CPP [label="fooCSHARP_wrap.cxx"];
WRAPPER_OBJ [label="fooCSHARP_wrap.cxx.o"];
WRAPPER_LIB [label="DOTNET_NATIVE_LIBRARY.so\nruntimes/linux-x64/native/", shape=component];
CPP -> WRAPPER_CPP [label="include", style=dashed];
CPP -> LIB [label="g++, ld", style=bold];
WRAPPER_CPP -> WRAPPER_OBJ [label="g++", style=bold];
WRAPPER_OBJ -> WRAPPER_LIB [label="ld", style=bold];
//PKG -> LIB [label="cmake", style=dashed];
//PKG -> WRAPPER_OBJ [label="cmake", style=dashed];
}
subgraph clusterCS {
color=darkviolet;
label = ".Net";
node [shape=note, style="rounded,filled", color=black, fillcolor=darkviolet];
DOTNET_PKG [label=".Net SDK packages\ne.g. dotnet-cli", shape=box3d, fillcolor=darkviolet];
RUNTIME_CSPROJ [label="Mizux.DotnetNative.runtime.linux-x64.csproj"];
RUNTIME_NUPKG [label="Mizux.DotnetNative.runtime.linux-x64.nupkg", shape=folder];
RUNTIME_CSPROJ -> RUNTIME_NUPKG [label="dotnet pack", style=bold];
DOTNET_CS [label="Foo.cs"];
DOTNET_CSPROJ [label="Mizux.DotnetNative.csproj"];
DOTNET_DLL [label="Mizux.DotnetNative.dll\nlib/netstandard2.1/", shape=component];
DOTNET_NUPKG [label="Mizux.DotnetNative.nupkg", shape=folder];
DOTNET_CS -> DOTNET_CSPROJ [label="Compile", style=dashed];
DOTNET_CSPROJ -> DOTNET_DLL [label="dotnet build", style=bold];
DOTNET_DLL -> DOTNET_NUPKG [label="pack", style=dashed];
DOTNET_CSPROJ -> DOTNET_NUPKG [label="dotnet pack", style=bold];
RUNTIME_NUPKG -> DOTNET_NUPKG [label="dependencies", style=dashed];
RUNTIME_NUPKG -> DOTNET_CSPROJ [label="PackageReference", style=dashed];
//DOTNET_NUPKG -> RUNTIME_CSPROJ [label="cmake", style=dashed];
//DOTNET_NUPKG -> DOTNET_CSPROJ [label="cmake", style=dashed];
}
CPP -> SWIG [label="include", style=dashed];
SWIG -> WRAPPER_CPP [label="swig", style=bold];
SWIG -> DOTNET_CS [label="swig", style=bold];
LIB -> RUNTIME_CSPROJ [label="Content", style=dashed];
LIB -> RUNTIME_NUPKG [label="pack", style=dashed];
WRAPPER_LIB -> RUNTIME_CSPROJ [label="Content", style=dashed];
WRAPPER_LIB -> RUNTIME_NUPKG [label="pack", style=dashed];
WRAPPER_LIB -> DOTNET_CS [label="PInvoke", style=dashed];
}
}
@enddot
// vim: set tw=0 ts=2 sw=2 expandtab: