From 373d659ec1efa1b9aa06e1bb42005019a96fc88a Mon Sep 17 00:00:00 2001 From: Nitin Sawant Date: Sun, 18 Aug 2024 20:28:04 +0530 Subject: [PATCH 01/20] added missing makefile --- Makefile | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 Makefile diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..7763297 --- /dev/null +++ b/Makefile @@ -0,0 +1,30 @@ + +OS_NAME = $(shell uname -s) +ifeq ($(OS_NAME), Darwin) + CXX = g++-6 + ifeq (, $(shell which $(CPP))) + $(error "$(CPP) not found! You need to install gcc 6 to build this!") + endif +else + CXX = g++ +endif + +CXXFLAGS = -Wall -std=c++14 -m64 -fPIC +LDLIBS = -ldl -lstdc++fs +JAVALIB= -I/usr/lib/jvm/java-9-openjdk-amd64/include -I/usr/lib/jvm/java-9-openjdk-amd64/include/linux/ +.PHONY: all clean + +all: tar.so Makefile + +tar.so: CoreCLRHost.cpp CoreCLRHost.hpp utils.hpp Sample1.h Makefile + git -C dynamicLinker pull || git clone https://github.com/passedbylove/dynamicLinker + make -C dynamicLinker CXX=$(CXX) + $(CXX) $(JAVALIB) $(CXXFLAGS) CoreCLRHost.cpp -shared -o tar.so -LdynamicLinker/ -ldynamicLinker $(LDLIBS) + + +clean: + rm -rf tar.so + sh -c "stat dynamicLinker/ &> /dev/null && make -C dynamicLinker clean" || true + +distclean: clean + rm -rf dynamicLinker/ From 65cf80243ef0cb20b1b901348501c1ba28473a2b Mon Sep 17 00:00:00 2001 From: Nitin Sawant Date: Sun, 18 Aug 2024 20:35:17 +0530 Subject: [PATCH 02/20] Update README.md --- README.md | 26 ++++++++++++++++++++++++-- 1 file changed, 24 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 6e12ab0..01a1a70 100644 --- a/README.md +++ b/README.md @@ -9,10 +9,32 @@ Java using JNI to call C++ code. then C++ host a core CLR to run C# code. # pre-require .NET CORE SDK 2.0: I only tested it in Ubuntu 18.04 x64 (Follow https://dotnet.microsoft.com/download/linux-package-manager/ubuntu18-04/sdk-current) +Install .NET Core 2.1 SDK (works well if you dont have any dotnet installed, tested Ubuntu 20.04.3 LTS wsl) + +1. Enable Microsoft PPA + +wget https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb +sudo dpkg -i packages-microsoft-prod.deb + +2. Installing .NET Core 2.1 SDK + +``` +sudo apt update +sudo apt install apt-transport-https +sudo apt install dotnet-sdk-2.1 +``` gcc 6: std C++ 14 for the filesystem +Installing build tools + +``` +sudo apt-get update +sudo apt-get install build-essential +sudo apt install cmake +``` # usage: +``` git submodule init git submodule update @@ -20,6 +42,6 @@ cmake . cmake --build . java -cp sample1.jar Sample1 +``` - -`You should keep the compiled file in the same fold.` +`You should keep the compiled file in the same folder.` From 406687ae44769c316ec68965258bb4f78d7496a5 Mon Sep 17 00:00:00 2001 From: Nitin Sawant Date: Sun, 18 Aug 2024 20:35:41 +0530 Subject: [PATCH 03/20] Update README.md --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index 01a1a70..dd16f7e 100644 --- a/README.md +++ b/README.md @@ -13,8 +13,10 @@ Install .NET Core 2.1 SDK (works well if you dont have any dotnet installed, tes 1. Enable Microsoft PPA +``` wget https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb sudo dpkg -i packages-microsoft-prod.deb +``` 2. Installing .NET Core 2.1 SDK From 9aacfa08b6d992b37dec07388530ed99ba56cf4e Mon Sep 17 00:00:00 2001 From: Nitin Sawant Date: Sun, 18 Aug 2024 20:36:58 +0530 Subject: [PATCH 04/20] Update README.md --- README.md | 5 ----- 1 file changed, 5 deletions(-) diff --git a/README.md b/README.md index dd16f7e..b173aa5 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,3 @@ -[![Build Status](https://dev.azure.com/marcozo0520/JavaCallCSharp/_apis/build/status/eisber.JavaCallCSharp?branchName=master)](https://dev.azure.com/marcozo0520/JavaCallCSharp/_build/latest?definitionId=1?branchName=master) - - # JavaCallCSharp Java call C# lib build with .NET CORE 2.0 via C++ as wraper The code is based on [example from coreCLR](https://github.com/dotnet/coreclr/tree/master/src/coreclr/hosts/unixcoreruncommon) @@ -13,10 +10,8 @@ Install .NET Core 2.1 SDK (works well if you dont have any dotnet installed, tes 1. Enable Microsoft PPA -``` wget https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb sudo dpkg -i packages-microsoft-prod.deb -``` 2. Installing .NET Core 2.1 SDK From 8b489e6462cd6a5975ec45d645cb15f313b7d657 Mon Sep 17 00:00:00 2001 From: Nitin Sawant Date: Sun, 18 Aug 2024 20:37:25 +0530 Subject: [PATCH 05/20] Update README.md --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index b173aa5..c8a29cc 100644 --- a/README.md +++ b/README.md @@ -10,8 +10,10 @@ Install .NET Core 2.1 SDK (works well if you dont have any dotnet installed, tes 1. Enable Microsoft PPA +``` wget https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb sudo dpkg -i packages-microsoft-prod.deb +``` 2. Installing .NET Core 2.1 SDK From 595345daa104b5cc7cc0279f7bb6b7e73cbe2329 Mon Sep 17 00:00:00 2001 From: Nitin Sawant Date: Sun, 18 Aug 2024 20:43:21 +0530 Subject: [PATCH 06/20] Update README.md --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index c8a29cc..4323a08 100644 --- a/README.md +++ b/README.md @@ -40,6 +40,7 @@ git submodule update cmake . cmake --build . +javac Sample1.java java -cp sample1.jar Sample1 ``` From 78973a64d7a6bffdd7da1e71cb626996fbb3b6d8 Mon Sep 17 00:00:00 2001 From: Nitin Sawant Date: Sun, 18 Aug 2024 20:55:12 +0530 Subject: [PATCH 07/20] Update README.md --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 4323a08..beeec5c 100644 --- a/README.md +++ b/README.md @@ -40,6 +40,7 @@ git submodule update cmake . cmake --build . +dotnet build Managed.csproj javac Sample1.java java -cp sample1.jar Sample1 ``` From 4c883fc729e57c73870f8982a7addbf659373a37 Mon Sep 17 00:00:00 2001 From: Nitin Sawant Date: Sun, 18 Aug 2024 20:55:37 +0530 Subject: [PATCH 08/20] Update Managed.csproj --- Managed.csproj | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Managed.csproj b/Managed.csproj index d3aacbb..1f4ad54 100644 --- a/Managed.csproj +++ b/Managed.csproj @@ -1,7 +1,7 @@ library - netcoreapp2.2 + netcoreapp2.1 true From 1ba5a8df901be089c499efaa1fc5a58fcd5b6d86 Mon Sep 17 00:00:00 2001 From: Nitin Sawant Date: Sun, 18 Aug 2024 20:56:29 +0530 Subject: [PATCH 09/20] Update README.md --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index beeec5c..f3aadf5 100644 --- a/README.md +++ b/README.md @@ -37,10 +37,11 @@ sudo apt install cmake git submodule init git submodule update +dotnet build Managed.csproj + cmake . cmake --build . -dotnet build Managed.csproj javac Sample1.java java -cp sample1.jar Sample1 ``` From 2db0a09492a8b59d467babbcf529abce5eb5829f Mon Sep 17 00:00:00 2001 From: Nitin Sawant Date: Sun, 18 Aug 2024 21:01:34 +0530 Subject: [PATCH 10/20] Update Sample1.java --- Sample1.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Sample1.java b/Sample1.java index 3291db2..f5bad0d 100644 --- a/Sample1.java +++ b/Sample1.java @@ -17,7 +17,7 @@ public static void main(String[] args) int sum = sample.intArrayMethod(new int[]{1,1,2,3,5,8,13}); int success=0; - success= sample.coreClrHost("./bin/Debug/netcoreapp2.2/Managed.dll"); + success= sample.coreClrHost("./bin/Debug/netcoreapp2.1/Managed.dll"); System.out.println("intMethod: "+ square); System.out.println("boolMethod: "+ bool); System.out.println("stringMethod: "+ text); From 0caaa5bca77839ac74f5479f0f73ce5c54ef7d2c Mon Sep 17 00:00:00 2001 From: Nitin S Date: Mon, 19 Aug 2024 09:51:51 +0530 Subject: [PATCH 11/20] Update README.md --- README.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/README.md b/README.md index f3aadf5..25d95f1 100644 --- a/README.md +++ b/README.md @@ -6,6 +6,12 @@ Java using JNI to call C++ code. then C++ host a core CLR to run C# code. # pre-require .NET CORE SDK 2.0: I only tested it in Ubuntu 18.04 x64 (Follow https://dotnet.microsoft.com/download/linux-package-manager/ubuntu18-04/sdk-current) + +If you already have recent version of donet need to remove it + +``` +sudo apt remove dotnet* +``` Install .NET Core 2.1 SDK (works well if you dont have any dotnet installed, tested Ubuntu 20.04.3 LTS wsl) 1. Enable Microsoft PPA From 4591894a9812a7e6a8bdbb8fa5399f78213444e2 Mon Sep 17 00:00:00 2001 From: Nitin S Date: Mon, 19 Aug 2024 10:45:55 +0530 Subject: [PATCH 12/20] Update CoreCLRHost.cpp --- CoreCLRHost.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CoreCLRHost.cpp b/CoreCLRHost.cpp index 3b19d38..c9da586 100644 --- a/CoreCLRHost.cpp +++ b/CoreCLRHost.cpp @@ -216,7 +216,7 @@ JNIEXPORT jint JNICALL Java_Sample1_coreClrHost(JNIEnv *env, jobject obj, jstrin int exitCode = runFromEntryPoint( cwd, //+std::string("./tar.so"), // absolute path to this exe - std::string("/usr/share/dotnet/shared/Microsoft.NETCore.App/2.2.1/"), // absolute path to coreCLR DLLs + std::string("/usr/share/dotnet/shared/Microsoft.NETCore.App/2.1.30/"), // absolute path to coreCLR DLLs assemblyDir, // absolute path to DLL to run assemblyName, std::string("Managed"), From 9a23c937da0d9a595d6ce1a49a5c81522cef212a Mon Sep 17 00:00:00 2001 From: Nitin S Date: Thu, 19 Sep 2024 11:58:59 +0530 Subject: [PATCH 13/20] Update README.md --- README.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/README.md b/README.md index 25d95f1..5525341 100644 --- a/README.md +++ b/README.md @@ -3,6 +3,13 @@ Java call C# lib build with .NET CORE 2.0 via C++ as wraper The code is based on [example from coreCLR](https://github.com/dotnet/coreclr/tree/master/src/coreclr/hosts/unixcoreruncommon) Java using JNI to call C++ code. then C++ host a core CLR to run C# code. + +```mermaid +graph LR +Jaava[Java] --> B((C++ .cpp)) +B --> C((Core CLR)) +C --> D[.NET core 2.2] + # pre-require .NET CORE SDK 2.0: I only tested it in Ubuntu 18.04 x64 (Follow https://dotnet.microsoft.com/download/linux-package-manager/ubuntu18-04/sdk-current) From 59ae413c6ccf954719f4fc6055a4a44180cfa490 Mon Sep 17 00:00:00 2001 From: Nitin S Date: Thu, 19 Sep 2024 12:00:40 +0530 Subject: [PATCH 14/20] Update README.md --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 5525341..81b7418 100644 --- a/README.md +++ b/README.md @@ -9,6 +9,7 @@ graph LR Jaava[Java] --> B((C++ .cpp)) B --> C((Core CLR)) C --> D[.NET core 2.2] +``` # pre-require From 2a83ab737dcbd0ee042306ebb3730b0d56e4d1c7 Mon Sep 17 00:00:00 2001 From: Nitin S Date: Thu, 19 Sep 2024 12:57:59 +0530 Subject: [PATCH 15/20] Update README.md java installation --- README.md | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 81b7418..c060d24 100644 --- a/README.md +++ b/README.md @@ -37,8 +37,7 @@ sudo apt install apt-transport-https sudo apt install dotnet-sdk-2.1 ``` -gcc 6: std C++ 14 for the filesystem -Installing build tools +3. Installing build tools (gcc 6: std C++ 14 for the filesystem) ``` sudo apt-get update @@ -46,6 +45,13 @@ sudo apt-get install build-essential sudo apt install cmake ``` +4. Installing Java + +``` +sudo apt install default-jre +sudo apt install default-jdk +``` + # usage: ``` git submodule init From 189d33f8d5d8edbea162f8c8259167dcf9725624 Mon Sep 17 00:00:00 2001 From: Nitin S Date: Thu, 19 Sep 2024 21:28:33 +0530 Subject: [PATCH 16/20] added backup of linked project added backup of linked project `dynamicLinker` since the root git project is deleted --- dynamicLinker-backup.zip | Bin 0 -> 8388 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 dynamicLinker-backup.zip diff --git a/dynamicLinker-backup.zip b/dynamicLinker-backup.zip new file mode 100644 index 0000000000000000000000000000000000000000..081abf8620a3e52524f8e5bfb1bb0c449066e369 GIT binary patch literal 8388 zcmb`NbyQp1w#I|IL$RX8o#5{7PJse}1a~M7MT@&jp-6Fe+5!a%MT)z-6^Axx%j4X0 z-{~#)zA@hDxjSR;oqw`^E7^0-wdVIlT?q~z74XNwPYqP~$D4m%_y8yXu$KeK-r8K* z+QAm$!fFQM<>lt$5#Z(Fv;c$5xda3RfFO{Cxdk_fhs%N=2;t=50dre$v+HOh0ALn9 zmi5&CIXdz`M(6zS*;?p+bj|xy;`c{qv$S@zwsdfGf&9f`R$yftQyTcZ!34wU0!(Vr zWID%n`Z7k5+^7@#ic^kba83H{ieyR*$Vh|itH6Zi@2}= zKp{K;Ao(|@=;i`)w{~UovbXzdjxpMXwhJ8i{xjA5>7x$#kZ8<-$7icWPfxefOm z;AM0lYsdiK7XG+O+EjYa8oaBp1ATSuE7wF>=T-=294(WSXBuqI#vM%IW`s5M>5@S; zq(+zOYmxl+G7^OdKCLR24`LHiGOuUEu>@awg0Wut{%sdUF9ps#Ubz=pmyzZg>Z2+Z zFA^%s9P;8%$YK3bsB^%<4!>NrN_RW;1)Qt;xBEgRxgx?t6!pR;JjmhrGD2*ncHO-U z#f)6mhA%tqvl}oC-@q^7u+{da5|eHa;6jrI3ti=ma|{&K>48vy3^ z@mDoPjZjluoq<1yRWN=2rU8K>i_ZQzY<&hFLrgDx)8jmh1*W0tmp02z#~K~N7HUyb z*PupYi`<>sK)s7u(}FqXmNLpz6_SE2#LH1E>@4`v)M1-c)|qA#!mB0jQ*^;ZjnSK{ z(KMgp<`FY^LPE~GXLivcQ`ri-;oU#3EnI>M@}$>eHu68rY-IVTt6m(DWn1Z=ewl?8 z>UO)7T^qyxS%h^}D>hB5Q9K7d#vyS~V0A zyvwQ`kEY*mdk&|M^@@1t2XU;q2>gVs6HyF|M?g{er-BGd{*o|D{;aW$fQ7JmOm}`s z42*Hk19Y-3PY>iYZ|>Pe$-_2VyBN>Ww-$mKRFi?1m`!}-N3dT^w3{P(zAKMszO{4* zl(i+Vnn~>x0SZn*4HzJ4)3BmkgYgs1qr?7XA}inJKucsnFE??)C;Y9`P8dbhhrj-*FHveGEswJS~#F#DD(X@f_w#3r44Q+^`D14^>e|xL=y4W|g2f z3b{$MxJMSwogrtR44--R3bTDsI70lEA*FwHb zj#G^wJfEoX*;FSlK{B;ytXc&mAt|P%ud$0mGEK1~)&W9Gy{f3&5TC*{jZ^S^U79m^ z)rhT%p~2>Ihk91>v`>EeENpC`U>gSILBU)h63;7JQe`}5c~Z&R{_~V zEUfK*t^tkODvk>r=ptbqLE^482?G+PAzgB44 zn6#fhtczkzh&vvO3&C0iaPsUEG9T*_$Wr%C3?>7UsZkYd*z6P4ObE$W zMjekuUEB>~(Pi%HxfLp-%QjUFnG+Tf7*wlCj#U3b($KVx6oFdFNs!uW)_RI+pMi8W z3Rhh?W{g0oayo$@x_*s0zQ2D2BnkAQv4u$NZkW`~%{-RV0_!c-*D`xov0ypcw!ypV za1s=Zjg6I;iA`0MuD(r#wMdhQH4Hevh1xaocQRr=X{L@_w)!ES!-x2ETrK*gMpOjW zY5D?vsk!*)kp&=KWBL05dj>eoSnsEnnJsK!lz5};oZKa44mVnS=NNk)Ha<;)3Ti!& zC*X4Rqfax7v2Y-M#^ePUFBZ*Ttwq8|kcXV&JA_w-8s69{tVF3|< z>}S1JuV!a7?i>K~j@K>U1NDywKJVbn?a0t5ZTEe7YSnne!GF$UwYRrL_$QfLFUcZj%90_wXi>QqcP=l+MMy6!NPr= zMJc|N9MV$Wgv7q$me~)XzP`0qSxKxvGt0RaF?Qa+Lq1R>!z{39+vpx1uRNJv&TPY}?%8rSXqx^tTO8EgN}fUpUa`@EY$Xm~sKyu~`?YDFBBvk2Ck%58FNU%<`{UHLUG zk==!tP2d24Q6vCB{P*KhQ$|8sMTX5D{8t5T)UmhSkj4H{Wy0Aieq3RsTe#RrYbrTn ztz_aCFRmroTH*d_oOe9-ExX3J$;w>H(rl^1Zdg!l#Zrc4j^(m1@^$CHa!GDIPB8sNv=)N#P9wPet>QD3oVlFs$fxl?OcWysc-) z^(Q4Y#H`B`rwGAM%QiFeT>uHz3z@PY|W< zqQcWIRhS+%@cPVeGMTu&B7B*?Coak(N4np(Mkh1U^c{1ROI-~RY3A(a<^o%g)cxVD z?q&eShKP2}`v7MDTbqiavGZyy!ksL}m%|+KTt=;Yl){0dSiT>zs@9e9d)BB}N+^`+ zwGblL4H1_qF~}6-M%5J;zg=s8^|n;k7ia7K;p?WYmlX14EO#n-%OeWmw(k9H5sO-$ z2C5BM1^M`+-ny&R8$^_u=XOnIjI<=A=Wkb|I$E$GTZSZJr&;PT0$kodehhk;yw5%D zT2;woIGfi5*1cS+G8Gt5SRw!LNx=+Q%YR0o_sNyo*T$=;kN7%7S%XpbujDIV8=$jBrRn_*;7!J!L*VM$SAyjfAqa?o}9~Bq9 zGS&HQ&OVlcs}dAoNUf;TG0nl3dquv7j+~-9L6-Jbq4FtZ zUo2_2%njC5faq=13&F)FW{565TcLvA6^Itz56#(YEYZDu=S4AbRDvVx(rlOcE}aMY zQdHR^B7{$bZy8@TLDqt^NwzUbX1ff$>Y*k)?pf`G+-g?eEIcJBGvv#Yrxqcz!;ikh z{2p3!o51WgN9~b$iZ?5pyRKWKFs92LCh`W-Ddsh_TcR#yf55HY+7Fggyi-Rnj@gir zK9b5*Iz3%8yS8Ijf`qX{23GOG>&ku*l!%;417u5|}`-f6vX zwck!$9Y!dyimUDlM!o>amvIFrD0GwuIT3AOn#V)LHbA<&#os-(Xqm?V@i9q$c(=;a zupTP@uM%%LxUr~`tzKIdnhB<}ywj(7sbpN4TTm-eFvehZ1$%iDcx0SMS8q*!_|@~w z8R)ldUVuM&Mi8i{sIUDdv@NTCA?nmOmHzfCze!TYVdoyB@AjO*^>`^flvgmcBeJdH zTt0=|jf1gdfFz{y#maCk&sC$FBlzr9OI;=U8xL3I9vZjW^ox8#EUfb(PnM4mq65e5 zse~SUf=UkoNGIk1fQ-I;7RjA8-fTy(glNpNmldhb`lXe_oWF5)tI2qQZf1Pq)^+ZR z?ciR1M#PG#Fp^!MK9xw0MGSd)O8(;OI6?o9N8}Ac{)A{0%Jzn-jkAgoQKR?4@-Q+hNg9d$xp3`+ss z=Ewwq@@R#-5U?v$*|j`a2EMHw9vqD2&xAGgLTd&V9Hj2Pe(kpG5Y*`0?6Rn7LhF1% z;3>+(byRmp4#U6G)c&S?B$9KMEgbG}lWk)DOWC9nTs?n|xIMcyGs5?i-I_g1+U<2R z!srrf`T)g4ql~(ZWV6Hurq!d@F0fpKbMcuc2qbB3C@K6zan+whkx_KlOC${IyLmsx zl;tpAneLMd%cf_f1#TU=A0Ec)m%|DnL7}bf6gvIFwJL!HeoGu_ay93scGY&}2HO&o z3)jp~ro7q?zdW7kbIkK0X%k&tj2-u@`7*~4b6umql}`8B{bCOT>Z-89`mXS(dU2RK zPcJ^DB*sxr5bSqXuq~YIL#U8oo7Oi}iGMgL4OL23aXaucmN#AE6zhk(Lt8fawF(M# zpj1TP_mP;G|HZ7Z`j@Pz)H8IQ=g0To(aVm{i0&%_(=CLdW4jZj(z!8!0**wzLs-QP z4WWwE$(qpS<67T{gV`(xdg1<^>ph`yf%WS;m^45)hoF4>oDHP|8o4_&9glAzPh5?9vxP&X9jP3#I@Q*Bm=yS zY9#>^+31JiP75g~yv@Ujge~)8Sm&OJ=@l>u{xof5$^;whD)wF2?Xgv74+1heXx}I| zQl-eZsqJ0xMJT{O^x6&7{syrZEnSoibn3ER5I|fRHEr zl@$dmB{dqc$*v90;WNrN`_ggpn=f_p7Z@si@cb`gi#wJ-&bpL~5E{4W9kRX!n$!l3 zpU+guYon-2z!gz{0iIyCY#)V0vFopx!+no8c@r6#0246!8g9%X^f`RU)L!4KQDIY6 z$uXQ)c=kwofCJkQ+p2vt94DzfH(b=cRWnzZ8`dez6jHEQ1S~;mxV^jZ_iDSN)PccV z71uAKT==re+Spo2?Wx(4L}tz~sI^lePlm>PfAAlFh>yJV|0n^}dT+t3u$2d=a!HGM z2HPqKUq1Q*?%<8MSQPnjQ(A8s(&04~Z$2O38LG5DV21{T57m~CTN|Zd+V(Yi~d~^{JrMT~@ueAT_bMz)dynde!a& z5CJu;6i=d@!Luj6sI6hoGwNHo z*5tP{VF8!)2|FvLQs&i_aGEZ_*PJEa%jvThs;60~F#m@Kp<~!aqYKqQ~ zy5?tc86)qFPsLTY4H?^aHntUHO70@Ty`VE^8}00(3YtwF!RpA*8O2g(`-SQ9$&yrE zMHuV(RD;iXXsrWT7K`0@;v5qTN$7P3)8S&7gm_Kx@V>LKbKz?hFZO)Sv&}w%JQD6Q zBt9z7(rDJ;t`f;eJVGnp5^xm=5db@n0HL96`aLlwj#EC0qwTwA(B88x=1HaAPz#`B zO{`MN5!KFSUCNiS*G>cmPsQp>t3xy1OP#y|ElC9I+m5I$lRsKruhiZZk2X1)4O)49 z1*&iaTvC`)&FQf$TfH+ha1WnI5+# z(e$n<1|_66r%oVm8HHCNpf`PfM&J6je68I*816b$An1@eXl=4Y+T6lO_%l#q%d~Gn zuyj3}M6vkp-V%Rc)zNIIj4;ZYt5 z8~aU;rGSqoMHF>`flm97))e7de5~L{w=^gY{AP5D z{hM0yM2t`H#S6g_Tv;s(mD3^F8Oe(B1=_f;dhwXRZ#1ycNS-Fl9P(xozw3(lnDt?J z!hjMF4Zr#(%}O*GSO@QO5p*4>cK1EC0Q~i{Ga^z=CM+M8IIc_o(EBZUxiaq2eFT%_eN|R`yFV9|8ijcyh1h{!w9%{JD}hW+V)kKilma8Vip$Bn43UIUU5|CiUh4Kw z@^-YP zh~=$lxSDkUtgygkA@vMfv$nwqwj)W@Kwmpbwb^I-*PIBM8wqyUcB6GGKb_qeLa43r zTUN^|#&P!xx-o|x#boMh7+rCSUO3KHQBy!rCh~Lc5!(NNuoKydNK3Ot_-k@G)jS$l zxOZ>(?>nr&p^^NNT*}sFZ03LMvhCGIl)5?a+jpujU#Gb%B6)wMsW*M2>I~PGlJUMp zJ~cT_+MwrdslxlDW@5un>?##45TWL*`{TAfg~kAC^Ii)7y2B??-|3d7M_j}o@WaLA zr|QeO5{)QBH}N^wbDUNjKrhxvNU7Zp%bq%tSec{r4&?`a7wSibic0#tRBc@!NtGcM zJjg#i(yzzQ=P*c+y<4neXNOnc9O3U$nfW#}xY0fF$gf&{o+F+mui}mKiI)T|YF(hJ z0dOmMOp=K3jy}|l!TDqF`IU0XNeW)NnOWGW-CNw1^?UUb=Dr;L-yYkab{qDexBr6U z_P@0M?797cxqo=~hw=USOWX7R_xJvT1NZY={>go4r2RqslM8cy`(5sTu+<)dAKEBC z!M^w6-fw~*nko;W4>j$dQ1E?U`kT;yQ@9^eA1anVskg|#P5pQM@*(!2#PSo{h5p;v z{~)+LY*ZSZ5k$?HvFAM%d{KKB=C%zBozl8tS4(lQQ;lAc4zWdQ{ Date: Fri, 20 Sep 2024 14:45:17 +0530 Subject: [PATCH 17/20] added pure .net method, removed dynamic linker submodule dependency --- .gitignore | 11 + .gitmodules | 3 - CMakeCache.txt | 433 +++++++++++++++++++++++++++++++++++++++ CoreCLRHost.cpp | 5 +- Makefile | 236 +++++++++++++++++++-- Managed.cs | 23 ++- Managed.sln | 25 +++ README.md | 2 +- Sample1.class | Bin 0 -> 1198 bytes Sample1.java | 12 +- cmake_install.cmake | 49 +++++ dynamicLinker-backup.zip | Bin 8388 -> 0 bytes libtar.so | Bin 0 -> 388984 bytes sample1.jar | Bin 0 -> 1390 bytes 14 files changed, 751 insertions(+), 48 deletions(-) create mode 100644 .gitignore delete mode 100644 .gitmodules create mode 100644 CMakeCache.txt create mode 100644 Managed.sln create mode 100644 Sample1.class create mode 100644 cmake_install.cmake delete mode 100644 dynamicLinker-backup.zip create mode 100644 libtar.so create mode 100644 sample1.jar diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..600eca2 --- /dev/null +++ b/.gitignore @@ -0,0 +1,11 @@ +################################################################################ +# This .gitignore file was automatically created by Microsoft(R) Visual Studio. +################################################################################ + +/.vs/* +#/docs/wwwroot/lib/* +#/docs/wwwroot/scripts/* +obj/ +bin/ +.git/ +CMakeFiles/ \ No newline at end of file diff --git a/.gitmodules b/.gitmodules deleted file mode 100644 index 05896e3..0000000 --- a/.gitmodules +++ /dev/null @@ -1,3 +0,0 @@ -[submodule "dynamicLinker"] - path = dynamicLinker - url = https://github.com/passedbylove/dynamicLinker diff --git a/CMakeCache.txt b/CMakeCache.txt new file mode 100644 index 0000000..15f6ebd --- /dev/null +++ b/CMakeCache.txt @@ -0,0 +1,433 @@ +# This is the CMakeCache file. +# For build in directory: /mnt/d/Projects/Nitin/Java2CSharp/Java2CSharp +# It was generated by CMake: /usr/bin/cmake +# You can edit this file to change values found and used by cmake. +# If you do not want to change any of the values, simply exit the editor. +# If you do want to change a value, simply edit, save, and exit the editor. +# The syntax for the file is as follows: +# KEY:TYPE=VALUE +# KEY is the name of a variable in the cache. +# TYPE is a hint to GUIs for the type of VALUE, DO NOT EDIT TYPE!. +# VALUE is the current value for the KEY. + +######################## +# EXTERNAL cache entries +######################## + +//Value Computed by CMake +ASA4J_BINARY_DIR:STATIC=/mnt/d/Projects/Nitin/Java2CSharp/Java2CSharp + +//Value Computed by CMake +ASA4J_SOURCE_DIR:STATIC=/mnt/d/Projects/Nitin/Java2CSharp/Java2CSharp + +//Path to a program. +CMAKE_ADDR2LINE:FILEPATH=/usr/bin/addr2line + +//Path to a program. +CMAKE_AR:FILEPATH=/usr/bin/ar + +//Choose the type of build, options are: None Debug Release RelWithDebInfo +// MinSizeRel ... +CMAKE_BUILD_TYPE:STRING= + +//Enable/Disable color output during build. +CMAKE_COLOR_MAKEFILE:BOOL=ON + +//CXX compiler +CMAKE_CXX_COMPILER:FILEPATH=/usr/bin/c++ + +//A wrapper around 'ar' adding the appropriate '--plugin' option +// for the GCC compiler +CMAKE_CXX_COMPILER_AR:FILEPATH=/usr/bin/gcc-ar-9 + +//A wrapper around 'ranlib' adding the appropriate '--plugin' option +// for the GCC compiler +CMAKE_CXX_COMPILER_RANLIB:FILEPATH=/usr/bin/gcc-ranlib-9 + +//Flags used by the CXX compiler during all build types. +CMAKE_CXX_FLAGS:STRING= + +//Flags used by the CXX compiler during DEBUG builds. +CMAKE_CXX_FLAGS_DEBUG:STRING=-g + +//Flags used by the CXX compiler during MINSIZEREL builds. +CMAKE_CXX_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG + +//Flags used by the CXX compiler during RELEASE builds. +CMAKE_CXX_FLAGS_RELEASE:STRING=-O3 -DNDEBUG + +//Flags used by the CXX compiler during RELWITHDEBINFO builds. +CMAKE_CXX_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG + +//C compiler +CMAKE_C_COMPILER:FILEPATH=/usr/bin/cc + +//A wrapper around 'ar' adding the appropriate '--plugin' option +// for the GCC compiler +CMAKE_C_COMPILER_AR:FILEPATH=/usr/bin/gcc-ar-9 + +//A wrapper around 'ranlib' adding the appropriate '--plugin' option +// for the GCC compiler +CMAKE_C_COMPILER_RANLIB:FILEPATH=/usr/bin/gcc-ranlib-9 + +//Flags used by the C compiler during all build types. +CMAKE_C_FLAGS:STRING= + +//Flags used by the C compiler during DEBUG builds. +CMAKE_C_FLAGS_DEBUG:STRING=-g + +//Flags used by the C compiler during MINSIZEREL builds. +CMAKE_C_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG + +//Flags used by the C compiler during RELEASE builds. +CMAKE_C_FLAGS_RELEASE:STRING=-O3 -DNDEBUG + +//Flags used by the C compiler during RELWITHDEBINFO builds. +CMAKE_C_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG + +//Path to a program. +CMAKE_DLLTOOL:FILEPATH=CMAKE_DLLTOOL-NOTFOUND + +//Flags used by the linker during all build types. +CMAKE_EXE_LINKER_FLAGS:STRING= + +//Flags used by the linker during DEBUG builds. +CMAKE_EXE_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during MINSIZEREL builds. +CMAKE_EXE_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during RELEASE builds. +CMAKE_EXE_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during RELWITHDEBINFO builds. +CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//Enable/Disable output of compile commands during generation. +CMAKE_EXPORT_COMPILE_COMMANDS:BOOL=OFF + +//Install path prefix, prepended onto install directories. +CMAKE_INSTALL_PREFIX:PATH=/usr/local + +//Path to a program. +CMAKE_LINKER:FILEPATH=/usr/bin/ld + +//Path to a program. +CMAKE_MAKE_PROGRAM:FILEPATH=/usr/bin/make + +//Flags used by the linker during the creation of modules during +// all build types. +CMAKE_MODULE_LINKER_FLAGS:STRING= + +//Flags used by the linker during the creation of modules during +// DEBUG builds. +CMAKE_MODULE_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during the creation of modules during +// MINSIZEREL builds. +CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during the creation of modules during +// RELEASE builds. +CMAKE_MODULE_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during the creation of modules during +// RELWITHDEBINFO builds. +CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//Path to a program. +CMAKE_NM:FILEPATH=/usr/bin/nm + +//Path to a program. +CMAKE_OBJCOPY:FILEPATH=/usr/bin/objcopy + +//Path to a program. +CMAKE_OBJDUMP:FILEPATH=/usr/bin/objdump + +//Value Computed by CMake +CMAKE_PROJECT_DESCRIPTION:STATIC= + +//Value Computed by CMake +CMAKE_PROJECT_HOMEPAGE_URL:STATIC= + +//Value Computed by CMake +CMAKE_PROJECT_NAME:STATIC=ASA4J + +//Path to a program. +CMAKE_RANLIB:FILEPATH=/usr/bin/ranlib + +//Path to a program. +CMAKE_READELF:FILEPATH=/usr/bin/readelf + +//Flags used by the linker during the creation of shared libraries +// during all build types. +CMAKE_SHARED_LINKER_FLAGS:STRING= + +//Flags used by the linker during the creation of shared libraries +// during DEBUG builds. +CMAKE_SHARED_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during the creation of shared libraries +// during MINSIZEREL builds. +CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during the creation of shared libraries +// during RELEASE builds. +CMAKE_SHARED_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during the creation of shared libraries +// during RELWITHDEBINFO builds. +CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//If set, runtime paths are not added when installing shared libraries, +// but are added when building. +CMAKE_SKIP_INSTALL_RPATH:BOOL=NO + +//If set, runtime paths are not added when using shared libraries. +CMAKE_SKIP_RPATH:BOOL=NO + +//Flags used by the linker during the creation of static libraries +// during all build types. +CMAKE_STATIC_LINKER_FLAGS:STRING= + +//Flags used by the linker during the creation of static libraries +// during DEBUG builds. +CMAKE_STATIC_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during the creation of static libraries +// during MINSIZEREL builds. +CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during the creation of static libraries +// during RELEASE builds. +CMAKE_STATIC_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during the creation of static libraries +// during RELWITHDEBINFO builds. +CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//Path to a program. +CMAKE_STRIP:FILEPATH=/usr/bin/strip + +//If this value is on, makefiles will be generated without the +// .SILENT directive, and all commands will be echoed to the console +// during the make. This is useful for debugging only. With Visual +// Studio IDE projects all commands are done without /nologo. +CMAKE_VERBOSE_MAKEFILE:BOOL=FALSE + +//Path to a file. +JAVA_AWT_INCLUDE_PATH:PATH=/usr/lib/jvm/default-java/include + +//Path to a library. +JAVA_AWT_LIBRARY:FILEPATH=/usr/lib/jvm/default-java/lib/libjawt.so + +//Path to a file. +JAVA_INCLUDE_PATH:PATH=/usr/lib/jvm/default-java/include + +//Path to a file. +JAVA_INCLUDE_PATH2:PATH=/usr/lib/jvm/default-java/include/linux + +//Path to a library. +JAVA_JVM_LIBRARY:FILEPATH=/usr/lib/jvm/default-java/lib/server/libjvm.so + +//Path to a program. +Java_IDLJ_EXECUTABLE:FILEPATH=Java_IDLJ_EXECUTABLE-NOTFOUND + +//Path to a program. +Java_JARSIGNER_EXECUTABLE:FILEPATH=/usr/bin/jarsigner + +//Path to a program. +Java_JAR_EXECUTABLE:FILEPATH=/usr/bin/jar + +//Path to a program. +Java_JAVAC_EXECUTABLE:FILEPATH=/usr/bin/javac + +//Path to a program. +Java_JAVADOC_EXECUTABLE:FILEPATH=/usr/bin/javadoc + +//Path to a program. +Java_JAVAH_EXECUTABLE:FILEPATH=Java_JAVAH_EXECUTABLE-NOTFOUND + +//Path to a program. +Java_JAVA_EXECUTABLE:FILEPATH=/usr/bin/java + +//Dependencies for the target +tar_LIB_DEPENDS:STATIC=general;dl;general;stdc++fs; + + +######################## +# INTERNAL cache entries +######################## + +//ADVANCED property for variable: CMAKE_ADDR2LINE +CMAKE_ADDR2LINE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_AR +CMAKE_AR-ADVANCED:INTERNAL=1 +//This is the directory where this CMakeCache.txt was created +CMAKE_CACHEFILE_DIR:INTERNAL=/mnt/d/Projects/Nitin/Java2CSharp/Java2CSharp +//Major version of cmake used to create the current loaded cache +CMAKE_CACHE_MAJOR_VERSION:INTERNAL=3 +//Minor version of cmake used to create the current loaded cache +CMAKE_CACHE_MINOR_VERSION:INTERNAL=16 +//Patch version of cmake used to create the current loaded cache +CMAKE_CACHE_PATCH_VERSION:INTERNAL=3 +//ADVANCED property for variable: CMAKE_COLOR_MAKEFILE +CMAKE_COLOR_MAKEFILE-ADVANCED:INTERNAL=1 +//Path to CMake executable. +CMAKE_COMMAND:INTERNAL=/usr/bin/cmake +//Path to cpack program executable. +CMAKE_CPACK_COMMAND:INTERNAL=/usr/bin/cpack +//Path to ctest program executable. +CMAKE_CTEST_COMMAND:INTERNAL=/usr/bin/ctest +//ADVANCED property for variable: CMAKE_CXX_COMPILER +CMAKE_CXX_COMPILER-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_COMPILER_AR +CMAKE_CXX_COMPILER_AR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_COMPILER_RANLIB +CMAKE_CXX_COMPILER_RANLIB-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS +CMAKE_CXX_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_DEBUG +CMAKE_CXX_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_MINSIZEREL +CMAKE_CXX_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELEASE +CMAKE_CXX_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELWITHDEBINFO +CMAKE_CXX_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_COMPILER +CMAKE_C_COMPILER-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_COMPILER_AR +CMAKE_C_COMPILER_AR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_COMPILER_RANLIB +CMAKE_C_COMPILER_RANLIB-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_FLAGS +CMAKE_C_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_FLAGS_DEBUG +CMAKE_C_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_FLAGS_MINSIZEREL +CMAKE_C_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_FLAGS_RELEASE +CMAKE_C_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_FLAGS_RELWITHDEBINFO +CMAKE_C_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_DLLTOOL +CMAKE_DLLTOOL-ADVANCED:INTERNAL=1 +//Executable file format +CMAKE_EXECUTABLE_FORMAT:INTERNAL=ELF +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS +CMAKE_EXE_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_DEBUG +CMAKE_EXE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_MINSIZEREL +CMAKE_EXE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELEASE +CMAKE_EXE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXPORT_COMPILE_COMMANDS +CMAKE_EXPORT_COMPILE_COMMANDS-ADVANCED:INTERNAL=1 +//Name of external makefile project generator. +CMAKE_EXTRA_GENERATOR:INTERNAL= +//Name of generator. +CMAKE_GENERATOR:INTERNAL=Unix Makefiles +//Generator instance identifier. +CMAKE_GENERATOR_INSTANCE:INTERNAL= +//Name of generator platform. +CMAKE_GENERATOR_PLATFORM:INTERNAL= +//Name of generator toolset. +CMAKE_GENERATOR_TOOLSET:INTERNAL= +//Source directory with the top level CMakeLists.txt file for this +// project +CMAKE_HOME_DIRECTORY:INTERNAL=/mnt/d/Projects/Nitin/Java2CSharp/Java2CSharp +//Install .so files without execute permission. +CMAKE_INSTALL_SO_NO_EXE:INTERNAL=1 +//ADVANCED property for variable: CMAKE_LINKER +CMAKE_LINKER-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MAKE_PROGRAM +CMAKE_MAKE_PROGRAM-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS +CMAKE_MODULE_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_DEBUG +CMAKE_MODULE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL +CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELEASE +CMAKE_MODULE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_NM +CMAKE_NM-ADVANCED:INTERNAL=1 +//number of local generators +CMAKE_NUMBER_OF_MAKEFILES:INTERNAL=1 +//ADVANCED property for variable: CMAKE_OBJCOPY +CMAKE_OBJCOPY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_OBJDUMP +CMAKE_OBJDUMP-ADVANCED:INTERNAL=1 +//Platform information initialized +CMAKE_PLATFORM_INFO_INITIALIZED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_RANLIB +CMAKE_RANLIB-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_READELF +CMAKE_READELF-ADVANCED:INTERNAL=1 +//Path to CMake installation. +CMAKE_ROOT:INTERNAL=/usr/share/cmake-3.16 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS +CMAKE_SHARED_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_DEBUG +CMAKE_SHARED_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL +CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELEASE +CMAKE_SHARED_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SKIP_INSTALL_RPATH +CMAKE_SKIP_INSTALL_RPATH-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SKIP_RPATH +CMAKE_SKIP_RPATH-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS +CMAKE_STATIC_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_DEBUG +CMAKE_STATIC_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL +CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELEASE +CMAKE_STATIC_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STRIP +CMAKE_STRIP-ADVANCED:INTERNAL=1 +//uname command +CMAKE_UNAME:INTERNAL=/usr/bin/uname +//ADVANCED property for variable: CMAKE_VERBOSE_MAKEFILE +CMAKE_VERBOSE_MAKEFILE-ADVANCED:INTERNAL=1 +//Details about finding JNI +FIND_PACKAGE_MESSAGE_DETAILS_JNI:INTERNAL=[/usr/lib/jvm/default-java/lib/libjawt.so][/usr/lib/jvm/default-java/lib/server/libjvm.so][/usr/lib/jvm/default-java/include][/usr/lib/jvm/default-java/include/linux][/usr/lib/jvm/default-java/include][v()] +//Details about finding Java +FIND_PACKAGE_MESSAGE_DETAILS_Java:INTERNAL=[/usr/bin/java][/usr/bin/jar][/usr/bin/javac][/usr/bin/javadoc][v11.0.24()] +//ADVANCED property for variable: JAVA_AWT_INCLUDE_PATH +JAVA_AWT_INCLUDE_PATH-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: JAVA_AWT_LIBRARY +JAVA_AWT_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: JAVA_INCLUDE_PATH +JAVA_INCLUDE_PATH-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: JAVA_INCLUDE_PATH2 +JAVA_INCLUDE_PATH2-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: JAVA_JVM_LIBRARY +JAVA_JVM_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: Java_IDLJ_EXECUTABLE +Java_IDLJ_EXECUTABLE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: Java_JARSIGNER_EXECUTABLE +Java_JARSIGNER_EXECUTABLE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: Java_JAR_EXECUTABLE +Java_JAR_EXECUTABLE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: Java_JAVAC_EXECUTABLE +Java_JAVAC_EXECUTABLE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: Java_JAVADOC_EXECUTABLE +Java_JAVADOC_EXECUTABLE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: Java_JAVAH_EXECUTABLE +Java_JAVAH_EXECUTABLE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: Java_JAVA_EXECUTABLE +Java_JAVA_EXECUTABLE-ADVANCED:INTERNAL=1 + diff --git a/CoreCLRHost.cpp b/CoreCLRHost.cpp index c9da586..1f501ed 100644 --- a/CoreCLRHost.cpp +++ b/CoreCLRHost.cpp @@ -30,12 +30,12 @@ int runFromEntryPoint( std::string tpaList; AddFilesFromDirectoryToTpaList( clrFilesAbsolutePath, tpaList ); - std::cout<<"line 32"<getFunction("coreclr_initialize"); auto coreclr_shutdown = dl->getFunction("coreclr_shutdown"); auto coreclr_create_delegate = dl->getFunction("coreclr_create_delegate"); - std::cout<<"line 37"<open(); coreclr_initialize.init(); @@ -176,7 +176,6 @@ JNIEXPORT jint JNICALL Java_Sample1_intMethod } JNIEXPORT jint JNICALL Java_Sample1_coreClrHost(JNIEnv *env, jobject obj, jstring string) { - std::cout<<"haha"<GetStringUTFChars(string,0); char cap[128]; strcpy(cap,str); diff --git a/Makefile b/Makefile index 7763297..9590997 100644 --- a/Makefile +++ b/Makefile @@ -1,30 +1,222 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 -OS_NAME = $(shell uname -s) -ifeq ($(OS_NAME), Darwin) - CXX = g++-6 - ifeq (, $(shell which $(CPP))) - $(error "$(CPP) not found! You need to install gcc 6 to build this!") - endif -else - CXX = g++ -endif +# Default target executed when no arguments are given to make. +default_target: all -CXXFLAGS = -Wall -std=c++14 -m64 -fPIC -LDLIBS = -ldl -lstdc++fs -JAVALIB= -I/usr/lib/jvm/java-9-openjdk-amd64/include -I/usr/lib/jvm/java-9-openjdk-amd64/include/linux/ -.PHONY: all clean +.PHONY : default_target -all: tar.so Makefile +# Allow only one "make -f Makefile2" at a time, but pass parallelism. +.NOTPARALLEL: -tar.so: CoreCLRHost.cpp CoreCLRHost.hpp utils.hpp Sample1.h Makefile - git -C dynamicLinker pull || git clone https://github.com/passedbylove/dynamicLinker - make -C dynamicLinker CXX=$(CXX) - $(CXX) $(JAVALIB) $(CXXFLAGS) CoreCLRHost.cpp -shared -o tar.so -LdynamicLinker/ -ldynamicLinker $(LDLIBS) +#============================================================================= +# Special targets provided by cmake. +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + + +# Remove some rules from gmake that .SUFFIXES does not remove. +SUFFIXES = + +.SUFFIXES: .hpux_make_needs_suffix_list + + +# Suppress display of executed commands. +$(VERBOSE).SILENT: + + +# A target that is always out of date. +cmake_force: + +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E remove -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /mnt/d/Projects/Nitin/Java2CSharp/Java2CSharp + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /mnt/d/Projects/Nitin/Java2CSharp/Java2CSharp + +#============================================================================= +# Targets provided globally by CMake. + +# Special rule for the target rebuild_cache +rebuild_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..." + /usr/bin/cmake -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) +.PHONY : rebuild_cache + +# Special rule for the target rebuild_cache +rebuild_cache/fast: rebuild_cache + +.PHONY : rebuild_cache/fast + +# Special rule for the target edit_cache +edit_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "No interactive CMake dialog available..." + /usr/bin/cmake -E echo No\ interactive\ CMake\ dialog\ available. +.PHONY : edit_cache + +# Special rule for the target edit_cache +edit_cache/fast: edit_cache + +.PHONY : edit_cache/fast + +# The main all target +all: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /mnt/d/Projects/Nitin/Java2CSharp/Java2CSharp/CMakeFiles /mnt/d/Projects/Nitin/Java2CSharp/Java2CSharp/CMakeFiles/progress.marks + $(MAKE) -f CMakeFiles/Makefile2 all + $(CMAKE_COMMAND) -E cmake_progress_start /mnt/d/Projects/Nitin/Java2CSharp/Java2CSharp/CMakeFiles 0 +.PHONY : all + +# The main clean target clean: - rm -rf tar.so - sh -c "stat dynamicLinker/ &> /dev/null && make -C dynamicLinker clean" || true + $(MAKE) -f CMakeFiles/Makefile2 clean +.PHONY : clean + +# The main clean target +clean/fast: clean + +.PHONY : clean/fast + +# Prepare targets for installation. +preinstall: all + $(MAKE) -f CMakeFiles/Makefile2 preinstall +.PHONY : preinstall + +# Prepare targets for installation. +preinstall/fast: + $(MAKE) -f CMakeFiles/Makefile2 preinstall +.PHONY : preinstall/fast + +# clear depends +depend: + $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1 +.PHONY : depend + +#============================================================================= +# Target rules for targets named sample1 + +# Build rule for target. +sample1: cmake_check_build_system + $(MAKE) -f CMakeFiles/Makefile2 sample1 +.PHONY : sample1 + +# fast build rule for target. +sample1/fast: + $(MAKE) -f CMakeFiles/sample1.dir/build.make CMakeFiles/sample1.dir/build +.PHONY : sample1/fast + +#============================================================================= +# Target rules for targets named tar + +# Build rule for target. +tar: cmake_check_build_system + $(MAKE) -f CMakeFiles/Makefile2 tar +.PHONY : tar + +# fast build rule for target. +tar/fast: + $(MAKE) -f CMakeFiles/tar.dir/build.make CMakeFiles/tar.dir/build +.PHONY : tar/fast + +CoreCLRHost.o: CoreCLRHost.cpp.o + +.PHONY : CoreCLRHost.o + +# target to build an object file +CoreCLRHost.cpp.o: + $(MAKE) -f CMakeFiles/tar.dir/build.make CMakeFiles/tar.dir/CoreCLRHost.cpp.o +.PHONY : CoreCLRHost.cpp.o + +CoreCLRHost.i: CoreCLRHost.cpp.i + +.PHONY : CoreCLRHost.i + +# target to preprocess a source file +CoreCLRHost.cpp.i: + $(MAKE) -f CMakeFiles/tar.dir/build.make CMakeFiles/tar.dir/CoreCLRHost.cpp.i +.PHONY : CoreCLRHost.cpp.i + +CoreCLRHost.s: CoreCLRHost.cpp.s + +.PHONY : CoreCLRHost.s + +# target to generate assembly for a file +CoreCLRHost.cpp.s: + $(MAKE) -f CMakeFiles/tar.dir/build.make CMakeFiles/tar.dir/CoreCLRHost.cpp.s +.PHONY : CoreCLRHost.cpp.s + +dynamicLinker/dynamicLinker.o: dynamicLinker/dynamicLinker.cpp.o + +.PHONY : dynamicLinker/dynamicLinker.o + +# target to build an object file +dynamicLinker/dynamicLinker.cpp.o: + $(MAKE) -f CMakeFiles/tar.dir/build.make CMakeFiles/tar.dir/dynamicLinker/dynamicLinker.cpp.o +.PHONY : dynamicLinker/dynamicLinker.cpp.o + +dynamicLinker/dynamicLinker.i: dynamicLinker/dynamicLinker.cpp.i + +.PHONY : dynamicLinker/dynamicLinker.i + +# target to preprocess a source file +dynamicLinker/dynamicLinker.cpp.i: + $(MAKE) -f CMakeFiles/tar.dir/build.make CMakeFiles/tar.dir/dynamicLinker/dynamicLinker.cpp.i +.PHONY : dynamicLinker/dynamicLinker.cpp.i + +dynamicLinker/dynamicLinker.s: dynamicLinker/dynamicLinker.cpp.s + +.PHONY : dynamicLinker/dynamicLinker.s + +# target to generate assembly for a file +dynamicLinker/dynamicLinker.cpp.s: + $(MAKE) -f CMakeFiles/tar.dir/build.make CMakeFiles/tar.dir/dynamicLinker/dynamicLinker.cpp.s +.PHONY : dynamicLinker/dynamicLinker.cpp.s + +# Help Target +help: + @echo "The following are some of the valid targets for this Makefile:" + @echo "... all (the default if no target is provided)" + @echo "... clean" + @echo "... depend" + @echo "... rebuild_cache" + @echo "... edit_cache" + @echo "... sample1" + @echo "... tar" + @echo "... CoreCLRHost.o" + @echo "... CoreCLRHost.i" + @echo "... CoreCLRHost.s" + @echo "... dynamicLinker/dynamicLinker.o" + @echo "... dynamicLinker/dynamicLinker.i" + @echo "... dynamicLinker/dynamicLinker.s" +.PHONY : help + + + +#============================================================================= +# Special targets to cleanup operation of make. + +# Special rule to run CMake to check the build system integrity. +# No rule that depends on this can have commands that come from listfiles +# because they might be regenerated. +cmake_check_build_system: + $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 +.PHONY : cmake_check_build_system -distclean: clean - rm -rf dynamicLinker/ diff --git a/Managed.cs b/Managed.cs index f56fdd8..fab9fae 100644 --- a/Managed.cs +++ b/Managed.cs @@ -6,16 +6,23 @@ using System; using System.Runtime.InteropServices; -public class Managed { +public class Managed +{ -[UnmanagedFunctionPointer(CallingConvention.ThisCall)] -unsafe delegate void myDelegate( IntPtr thisptr ); + [UnmanagedFunctionPointer(CallingConvention.ThisCall)] + unsafe delegate void myDelegate(IntPtr thisptr); -public static unsafe void runIt( IntPtr thisptr, IntPtr mem_fun ) { - Console.WriteLine("Here's C# code:"); + public static unsafe void runIt(IntPtr thisptr, IntPtr mem_fun) + { + Console.WriteLine(ProcessStatement()); - myDelegate fun = (myDelegate) Marshal.GetDelegateForFunctionPointer( mem_fun, typeof(myDelegate) ); + //myDelegate fun = (myDelegate) Marshal.GetDelegateForFunctionPointer( mem_fun, typeof(myDelegate) ); - fun(thisptr); // first argument of member functions in C++ is "this", but it's hidden from us :-) - } + //fun(thisptr); // first argument of member functions in C++ is "this", but it's hidden from us :-) + } + public static string ProcessStatement() + { + return "In ProcessStatement"; + } } + diff --git a/Managed.sln b/Managed.sln new file mode 100644 index 0000000..aee6598 --- /dev/null +++ b/Managed.sln @@ -0,0 +1,25 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 17 +VisualStudioVersion = 17.10.35027.167 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Managed", "Managed.csproj", "{66E3787C-26B9-4FDC-9329-C6BE4F9288DD}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {66E3787C-26B9-4FDC-9329-C6BE4F9288DD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {66E3787C-26B9-4FDC-9329-C6BE4F9288DD}.Debug|Any CPU.Build.0 = Debug|Any CPU + {66E3787C-26B9-4FDC-9329-C6BE4F9288DD}.Release|Any CPU.ActiveCfg = Release|Any CPU + {66E3787C-26B9-4FDC-9329-C6BE4F9288DD}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {21D43ED0-F3C3-4708-9E53-E577E5B5826F} + EndGlobalSection +EndGlobal diff --git a/README.md b/README.md index c060d24..45a5c3a 100644 --- a/README.md +++ b/README.md @@ -54,7 +54,7 @@ sudo apt install default-jdk # usage: ``` -git submodule init +git init git submodule update dotnet build Managed.csproj diff --git a/Sample1.class b/Sample1.class new file mode 100644 index 0000000000000000000000000000000000000000..18db37eed65e6547d43623912e4260b36e43b5db GIT binary patch literal 1198 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 4!s~5P`^M~}4>`gwy#Fx{KI)M0LkL&VBFVhwL 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 qglk1At&mLsl{Cl>1C=xguocKeDR% Date: Fri, 20 Sep 2024 15:04:42 +0530 Subject: [PATCH 18/20] Delete CMakeCache.txt --- CMakeCache.txt | 433 ------------------------------------------------- 1 file changed, 433 deletions(-) delete mode 100644 CMakeCache.txt diff --git a/CMakeCache.txt b/CMakeCache.txt deleted file mode 100644 index 15f6ebd..0000000 --- a/CMakeCache.txt +++ /dev/null @@ -1,433 +0,0 @@ -# This is the CMakeCache file. -# For build in directory: /mnt/d/Projects/Nitin/Java2CSharp/Java2CSharp -# It was generated by CMake: /usr/bin/cmake -# You can edit this file to change values found and used by cmake. -# If you do not want to change any of the values, simply exit the editor. -# If you do want to change a value, simply edit, save, and exit the editor. -# The syntax for the file is as follows: -# KEY:TYPE=VALUE -# KEY is the name of a variable in the cache. -# TYPE is a hint to GUIs for the type of VALUE, DO NOT EDIT TYPE!. -# VALUE is the current value for the KEY. - -######################## -# EXTERNAL cache entries -######################## - -//Value Computed by CMake -ASA4J_BINARY_DIR:STATIC=/mnt/d/Projects/Nitin/Java2CSharp/Java2CSharp - -//Value Computed by CMake -ASA4J_SOURCE_DIR:STATIC=/mnt/d/Projects/Nitin/Java2CSharp/Java2CSharp - -//Path to a program. -CMAKE_ADDR2LINE:FILEPATH=/usr/bin/addr2line - -//Path to a program. -CMAKE_AR:FILEPATH=/usr/bin/ar - -//Choose the type of build, options are: None Debug Release RelWithDebInfo -// MinSizeRel ... -CMAKE_BUILD_TYPE:STRING= - -//Enable/Disable color output during build. -CMAKE_COLOR_MAKEFILE:BOOL=ON - -//CXX compiler -CMAKE_CXX_COMPILER:FILEPATH=/usr/bin/c++ - -//A wrapper around 'ar' adding the appropriate '--plugin' option -// for the GCC compiler -CMAKE_CXX_COMPILER_AR:FILEPATH=/usr/bin/gcc-ar-9 - -//A wrapper around 'ranlib' adding the appropriate '--plugin' option -// for the GCC compiler -CMAKE_CXX_COMPILER_RANLIB:FILEPATH=/usr/bin/gcc-ranlib-9 - -//Flags used by the CXX compiler during all build types. -CMAKE_CXX_FLAGS:STRING= - -//Flags used by the CXX compiler during DEBUG builds. -CMAKE_CXX_FLAGS_DEBUG:STRING=-g - -//Flags used by the CXX compiler during MINSIZEREL builds. -CMAKE_CXX_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG - -//Flags used by the CXX compiler during RELEASE builds. -CMAKE_CXX_FLAGS_RELEASE:STRING=-O3 -DNDEBUG - -//Flags used by the CXX compiler during RELWITHDEBINFO builds. -CMAKE_CXX_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG - -//C compiler -CMAKE_C_COMPILER:FILEPATH=/usr/bin/cc - -//A wrapper around 'ar' adding the appropriate '--plugin' option -// for the GCC compiler -CMAKE_C_COMPILER_AR:FILEPATH=/usr/bin/gcc-ar-9 - -//A wrapper around 'ranlib' adding the appropriate '--plugin' option -// for the GCC compiler -CMAKE_C_COMPILER_RANLIB:FILEPATH=/usr/bin/gcc-ranlib-9 - -//Flags used by the C compiler during all build types. -CMAKE_C_FLAGS:STRING= - -//Flags used by the C compiler during DEBUG builds. -CMAKE_C_FLAGS_DEBUG:STRING=-g - -//Flags used by the C compiler during MINSIZEREL builds. -CMAKE_C_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG - -//Flags used by the C compiler during RELEASE builds. -CMAKE_C_FLAGS_RELEASE:STRING=-O3 -DNDEBUG - -//Flags used by the C compiler during RELWITHDEBINFO builds. -CMAKE_C_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG - -//Path to a program. -CMAKE_DLLTOOL:FILEPATH=CMAKE_DLLTOOL-NOTFOUND - -//Flags used by the linker during all build types. -CMAKE_EXE_LINKER_FLAGS:STRING= - -//Flags used by the linker during DEBUG builds. -CMAKE_EXE_LINKER_FLAGS_DEBUG:STRING= - -//Flags used by the linker during MINSIZEREL builds. -CMAKE_EXE_LINKER_FLAGS_MINSIZEREL:STRING= - -//Flags used by the linker during RELEASE builds. -CMAKE_EXE_LINKER_FLAGS_RELEASE:STRING= - -//Flags used by the linker during RELWITHDEBINFO builds. -CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO:STRING= - -//Enable/Disable output of compile commands during generation. -CMAKE_EXPORT_COMPILE_COMMANDS:BOOL=OFF - -//Install path prefix, prepended onto install directories. -CMAKE_INSTALL_PREFIX:PATH=/usr/local - -//Path to a program. -CMAKE_LINKER:FILEPATH=/usr/bin/ld - -//Path to a program. -CMAKE_MAKE_PROGRAM:FILEPATH=/usr/bin/make - -//Flags used by the linker during the creation of modules during -// all build types. -CMAKE_MODULE_LINKER_FLAGS:STRING= - -//Flags used by the linker during the creation of modules during -// DEBUG builds. -CMAKE_MODULE_LINKER_FLAGS_DEBUG:STRING= - -//Flags used by the linker during the creation of modules during -// MINSIZEREL builds. -CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL:STRING= - -//Flags used by the linker during the creation of modules during -// RELEASE builds. -CMAKE_MODULE_LINKER_FLAGS_RELEASE:STRING= - -//Flags used by the linker during the creation of modules during -// RELWITHDEBINFO builds. -CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO:STRING= - -//Path to a program. -CMAKE_NM:FILEPATH=/usr/bin/nm - -//Path to a program. -CMAKE_OBJCOPY:FILEPATH=/usr/bin/objcopy - -//Path to a program. -CMAKE_OBJDUMP:FILEPATH=/usr/bin/objdump - -//Value Computed by CMake -CMAKE_PROJECT_DESCRIPTION:STATIC= - -//Value Computed by CMake -CMAKE_PROJECT_HOMEPAGE_URL:STATIC= - -//Value Computed by CMake -CMAKE_PROJECT_NAME:STATIC=ASA4J - -//Path to a program. -CMAKE_RANLIB:FILEPATH=/usr/bin/ranlib - -//Path to a program. -CMAKE_READELF:FILEPATH=/usr/bin/readelf - -//Flags used by the linker during the creation of shared libraries -// during all build types. -CMAKE_SHARED_LINKER_FLAGS:STRING= - -//Flags used by the linker during the creation of shared libraries -// during DEBUG builds. -CMAKE_SHARED_LINKER_FLAGS_DEBUG:STRING= - -//Flags used by the linker during the creation of shared libraries -// during MINSIZEREL builds. -CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL:STRING= - -//Flags used by the linker during the creation of shared libraries -// during RELEASE builds. -CMAKE_SHARED_LINKER_FLAGS_RELEASE:STRING= - -//Flags used by the linker during the creation of shared libraries -// during RELWITHDEBINFO builds. -CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO:STRING= - -//If set, runtime paths are not added when installing shared libraries, -// but are added when building. -CMAKE_SKIP_INSTALL_RPATH:BOOL=NO - -//If set, runtime paths are not added when using shared libraries. -CMAKE_SKIP_RPATH:BOOL=NO - -//Flags used by the linker during the creation of static libraries -// during all build types. -CMAKE_STATIC_LINKER_FLAGS:STRING= - -//Flags used by the linker during the creation of static libraries -// during DEBUG builds. -CMAKE_STATIC_LINKER_FLAGS_DEBUG:STRING= - -//Flags used by the linker during the creation of static libraries -// during MINSIZEREL builds. -CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL:STRING= - -//Flags used by the linker during the creation of static libraries -// during RELEASE builds. -CMAKE_STATIC_LINKER_FLAGS_RELEASE:STRING= - -//Flags used by the linker during the creation of static libraries -// during RELWITHDEBINFO builds. -CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO:STRING= - -//Path to a program. -CMAKE_STRIP:FILEPATH=/usr/bin/strip - -//If this value is on, makefiles will be generated without the -// .SILENT directive, and all commands will be echoed to the console -// during the make. This is useful for debugging only. With Visual -// Studio IDE projects all commands are done without /nologo. -CMAKE_VERBOSE_MAKEFILE:BOOL=FALSE - -//Path to a file. -JAVA_AWT_INCLUDE_PATH:PATH=/usr/lib/jvm/default-java/include - -//Path to a library. -JAVA_AWT_LIBRARY:FILEPATH=/usr/lib/jvm/default-java/lib/libjawt.so - -//Path to a file. -JAVA_INCLUDE_PATH:PATH=/usr/lib/jvm/default-java/include - -//Path to a file. -JAVA_INCLUDE_PATH2:PATH=/usr/lib/jvm/default-java/include/linux - -//Path to a library. -JAVA_JVM_LIBRARY:FILEPATH=/usr/lib/jvm/default-java/lib/server/libjvm.so - -//Path to a program. -Java_IDLJ_EXECUTABLE:FILEPATH=Java_IDLJ_EXECUTABLE-NOTFOUND - -//Path to a program. -Java_JARSIGNER_EXECUTABLE:FILEPATH=/usr/bin/jarsigner - -//Path to a program. -Java_JAR_EXECUTABLE:FILEPATH=/usr/bin/jar - -//Path to a program. -Java_JAVAC_EXECUTABLE:FILEPATH=/usr/bin/javac - -//Path to a program. -Java_JAVADOC_EXECUTABLE:FILEPATH=/usr/bin/javadoc - -//Path to a program. -Java_JAVAH_EXECUTABLE:FILEPATH=Java_JAVAH_EXECUTABLE-NOTFOUND - -//Path to a program. -Java_JAVA_EXECUTABLE:FILEPATH=/usr/bin/java - -//Dependencies for the target -tar_LIB_DEPENDS:STATIC=general;dl;general;stdc++fs; - - -######################## -# INTERNAL cache entries -######################## - -//ADVANCED property for variable: CMAKE_ADDR2LINE -CMAKE_ADDR2LINE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_AR -CMAKE_AR-ADVANCED:INTERNAL=1 -//This is the directory where this CMakeCache.txt was created -CMAKE_CACHEFILE_DIR:INTERNAL=/mnt/d/Projects/Nitin/Java2CSharp/Java2CSharp -//Major version of cmake used to create the current loaded cache -CMAKE_CACHE_MAJOR_VERSION:INTERNAL=3 -//Minor version of cmake used to create the current loaded cache -CMAKE_CACHE_MINOR_VERSION:INTERNAL=16 -//Patch version of cmake used to create the current loaded cache -CMAKE_CACHE_PATCH_VERSION:INTERNAL=3 -//ADVANCED property for variable: CMAKE_COLOR_MAKEFILE -CMAKE_COLOR_MAKEFILE-ADVANCED:INTERNAL=1 -//Path to CMake executable. -CMAKE_COMMAND:INTERNAL=/usr/bin/cmake -//Path to cpack program executable. -CMAKE_CPACK_COMMAND:INTERNAL=/usr/bin/cpack -//Path to ctest program executable. -CMAKE_CTEST_COMMAND:INTERNAL=/usr/bin/ctest -//ADVANCED property for variable: CMAKE_CXX_COMPILER -CMAKE_CXX_COMPILER-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_CXX_COMPILER_AR -CMAKE_CXX_COMPILER_AR-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_CXX_COMPILER_RANLIB -CMAKE_CXX_COMPILER_RANLIB-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_CXX_FLAGS -CMAKE_CXX_FLAGS-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_CXX_FLAGS_DEBUG -CMAKE_CXX_FLAGS_DEBUG-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_CXX_FLAGS_MINSIZEREL -CMAKE_CXX_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELEASE -CMAKE_CXX_FLAGS_RELEASE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELWITHDEBINFO -CMAKE_CXX_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_C_COMPILER -CMAKE_C_COMPILER-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_C_COMPILER_AR -CMAKE_C_COMPILER_AR-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_C_COMPILER_RANLIB -CMAKE_C_COMPILER_RANLIB-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_C_FLAGS -CMAKE_C_FLAGS-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_C_FLAGS_DEBUG -CMAKE_C_FLAGS_DEBUG-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_C_FLAGS_MINSIZEREL -CMAKE_C_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_C_FLAGS_RELEASE -CMAKE_C_FLAGS_RELEASE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_C_FLAGS_RELWITHDEBINFO -CMAKE_C_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_DLLTOOL -CMAKE_DLLTOOL-ADVANCED:INTERNAL=1 -//Executable file format -CMAKE_EXECUTABLE_FORMAT:INTERNAL=ELF -//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS -CMAKE_EXE_LINKER_FLAGS-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_DEBUG -CMAKE_EXE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_MINSIZEREL -CMAKE_EXE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELEASE -CMAKE_EXE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO -CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_EXPORT_COMPILE_COMMANDS -CMAKE_EXPORT_COMPILE_COMMANDS-ADVANCED:INTERNAL=1 -//Name of external makefile project generator. -CMAKE_EXTRA_GENERATOR:INTERNAL= -//Name of generator. -CMAKE_GENERATOR:INTERNAL=Unix Makefiles -//Generator instance identifier. -CMAKE_GENERATOR_INSTANCE:INTERNAL= -//Name of generator platform. -CMAKE_GENERATOR_PLATFORM:INTERNAL= -//Name of generator toolset. -CMAKE_GENERATOR_TOOLSET:INTERNAL= -//Source directory with the top level CMakeLists.txt file for this -// project -CMAKE_HOME_DIRECTORY:INTERNAL=/mnt/d/Projects/Nitin/Java2CSharp/Java2CSharp -//Install .so files without execute permission. -CMAKE_INSTALL_SO_NO_EXE:INTERNAL=1 -//ADVANCED property for variable: CMAKE_LINKER -CMAKE_LINKER-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_MAKE_PROGRAM -CMAKE_MAKE_PROGRAM-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS -CMAKE_MODULE_LINKER_FLAGS-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_DEBUG -CMAKE_MODULE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL -CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELEASE -CMAKE_MODULE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO -CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_NM -CMAKE_NM-ADVANCED:INTERNAL=1 -//number of local generators -CMAKE_NUMBER_OF_MAKEFILES:INTERNAL=1 -//ADVANCED property for variable: CMAKE_OBJCOPY -CMAKE_OBJCOPY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_OBJDUMP -CMAKE_OBJDUMP-ADVANCED:INTERNAL=1 -//Platform information initialized -CMAKE_PLATFORM_INFO_INITIALIZED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_RANLIB -CMAKE_RANLIB-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_READELF -CMAKE_READELF-ADVANCED:INTERNAL=1 -//Path to CMake installation. -CMAKE_ROOT:INTERNAL=/usr/share/cmake-3.16 -//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS -CMAKE_SHARED_LINKER_FLAGS-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_DEBUG -CMAKE_SHARED_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL -CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELEASE -CMAKE_SHARED_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO -CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_SKIP_INSTALL_RPATH -CMAKE_SKIP_INSTALL_RPATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_SKIP_RPATH -CMAKE_SKIP_RPATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS -CMAKE_STATIC_LINKER_FLAGS-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_DEBUG -CMAKE_STATIC_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL -CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELEASE -CMAKE_STATIC_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO -CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_STRIP -CMAKE_STRIP-ADVANCED:INTERNAL=1 -//uname command -CMAKE_UNAME:INTERNAL=/usr/bin/uname -//ADVANCED property for variable: CMAKE_VERBOSE_MAKEFILE -CMAKE_VERBOSE_MAKEFILE-ADVANCED:INTERNAL=1 -//Details about finding JNI -FIND_PACKAGE_MESSAGE_DETAILS_JNI:INTERNAL=[/usr/lib/jvm/default-java/lib/libjawt.so][/usr/lib/jvm/default-java/lib/server/libjvm.so][/usr/lib/jvm/default-java/include][/usr/lib/jvm/default-java/include/linux][/usr/lib/jvm/default-java/include][v()] -//Details about finding Java -FIND_PACKAGE_MESSAGE_DETAILS_Java:INTERNAL=[/usr/bin/java][/usr/bin/jar][/usr/bin/javac][/usr/bin/javadoc][v11.0.24()] -//ADVANCED property for variable: JAVA_AWT_INCLUDE_PATH -JAVA_AWT_INCLUDE_PATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: JAVA_AWT_LIBRARY -JAVA_AWT_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: JAVA_INCLUDE_PATH -JAVA_INCLUDE_PATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: JAVA_INCLUDE_PATH2 -JAVA_INCLUDE_PATH2-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: JAVA_JVM_LIBRARY -JAVA_JVM_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: Java_IDLJ_EXECUTABLE -Java_IDLJ_EXECUTABLE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: Java_JARSIGNER_EXECUTABLE -Java_JARSIGNER_EXECUTABLE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: Java_JAR_EXECUTABLE -Java_JAR_EXECUTABLE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: Java_JAVAC_EXECUTABLE -Java_JAVAC_EXECUTABLE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: Java_JAVADOC_EXECUTABLE -Java_JAVADOC_EXECUTABLE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: Java_JAVAH_EXECUTABLE -Java_JAVAH_EXECUTABLE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: Java_JAVA_EXECUTABLE -Java_JAVA_EXECUTABLE-ADVANCED:INTERNAL=1 - From b7851a615bee1dd51a23180723499da56133255d Mon Sep 17 00:00:00 2001 From: Nitin S Date: Fri, 20 Sep 2024 15:22:19 +0530 Subject: [PATCH 19/20] Add files via upload --- dynamicLinker-backup.zip | Bin 0 -> 8388 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 dynamicLinker-backup.zip diff --git a/dynamicLinker-backup.zip b/dynamicLinker-backup.zip new file mode 100644 index 0000000000000000000000000000000000000000..081abf8620a3e52524f8e5bfb1bb0c449066e369 GIT binary patch literal 8388 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 Date: Fri, 20 Sep 2024 15:24:20 +0530 Subject: [PATCH 20/20] Delete cmake_install.cmake --- cmake_install.cmake | 49 --------------------------------------------- 1 file changed, 49 deletions(-) delete mode 100644 cmake_install.cmake diff --git a/cmake_install.cmake b/cmake_install.cmake deleted file mode 100644 index 36fce73..0000000 --- a/cmake_install.cmake +++ /dev/null @@ -1,49 +0,0 @@ -# Install script for directory: /mnt/d/Projects/Nitin/Java2CSharp/Java2CSharp - -# Set the install prefix -if(NOT DEFINED CMAKE_INSTALL_PREFIX) - set(CMAKE_INSTALL_PREFIX "/usr/local") -endif() -string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}") - -# Set the install configuration name. -if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) - if(BUILD_TYPE) - string(REGEX REPLACE "^[^A-Za-z0-9_]+" "" - CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}") - else() - set(CMAKE_INSTALL_CONFIG_NAME "") - endif() - message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"") -endif() - -# Set the component getting installed. -if(NOT CMAKE_INSTALL_COMPONENT) - if(COMPONENT) - message(STATUS "Install component: \"${COMPONENT}\"") - set(CMAKE_INSTALL_COMPONENT "${COMPONENT}") - else() - set(CMAKE_INSTALL_COMPONENT) - endif() -endif() - -# Install shared libraries without execute permission? -if(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE) - set(CMAKE_INSTALL_SO_NO_EXE "1") -endif() - -# Is this installation the result of a crosscompile? -if(NOT DEFINED CMAKE_CROSSCOMPILING) - set(CMAKE_CROSSCOMPILING "FALSE") -endif() - -if(CMAKE_INSTALL_COMPONENT) - set(CMAKE_INSTALL_MANIFEST "install_manifest_${CMAKE_INSTALL_COMPONENT}.txt") -else() - set(CMAKE_INSTALL_MANIFEST "install_manifest.txt") -endif() - -string(REPLACE ";" "\n" CMAKE_INSTALL_MANIFEST_CONTENT - "${CMAKE_INSTALL_MANIFEST_FILES}") -file(WRITE "/mnt/d/Projects/Nitin/Java2CSharp/Java2CSharp/${CMAKE_INSTALL_MANIFEST}" - "${CMAKE_INSTALL_MANIFEST_CONTENT}")