Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

GTK build with dotnet6+xbuild #220

Merged
merged 12 commits into from
Oct 13, 2023
Merged

Conversation

aarani
Copy link
Contributor

@aarani aarani commented Aug 21, 2023

No description provided.

scripts/make.fsx Outdated Show resolved Hide resolved
snap/snapcraft.yaml Outdated Show resolved Hide resolved
@knocte knocte changed the title Bye KZU and GTK build on dotnet6+xbuild GTK build with dotnet6+xbuild Aug 21, 2023
@aarani aarani force-pushed the wip/byeKzu branch 7 times, most recently from 3407e87 to e15b622 Compare August 21, 2023 09:43
@knocte
Copy link
Member

knocte commented Aug 21, 2023

CI is red, please retry builds if needed.

scripts/make.fsx Outdated Show resolved Hide resolved
scripts/make.fsx Outdated Show resolved Hide resolved
scripts/snap_build.sh Outdated Show resolved Hide resolved
scripts/make.fsx Outdated Show resolved Hide resolved
@aarani aarani force-pushed the wip/byeKzu branch 3 times, most recently from f8aa7ef to f24c531 Compare August 25, 2023 10:56
scripts/make.fsx Outdated Show resolved Hide resolved
scripts/make.fsx Outdated Show resolved Hide resolved
scripts/make.fsx Outdated Show resolved Hide resolved
scripts/make.fsx Outdated Show resolved Hide resolved
@knocte
Copy link
Member

knocte commented Aug 26, 2023

scripts/make.fsx: build frontend when dotnet exist

Typo: exist -> exists

@knocte
Copy link
Member

knocte commented Aug 28, 2023

CI is red.

@knocte
Copy link
Member

knocte commented Aug 28, 2023

scripts/make.fsx: disable parallel processing

This commit msg has the what but not the why (btw, considering that this fixes a problem introduced in the previous commit, maybe you should just squash it with previous, but please don't forget to add the why in commit msg)

We renamed the project long time ago so it is about
time to follow suit with the solution file name.
This way they don't get confused with the main solution
(and still can be used by make.fsx to build with the command
line).
Updating links to scripts and Fsdk in main solution, and
deleting them on the others (since the others will only be used
for building now, not for using in the IDE).
@knocte
Copy link
Member

knocte commented Aug 28, 2023

scripts/make.fsx: build frontend when .NET exists

This commit msg is confusing. I guess you meant to write "dotnet", but later decided to shorten it to be able to meet the 50char, however shortening "dotnet" to ".NET" makes it confusing because .NET could mean .NETFramework or .NETCore/.NET6.

@knocte
Copy link
Member

knocte commented Aug 28, 2023

Frontend.XF.GTK: import XF on non-xbuild builds

Missing the why (I guess the best way to address this is maybe squash this commit with previous, because it's the previous one the one that contains the purpose).

@knocte
Copy link
Member

knocte commented Aug 28, 2023

CI: add more deps to stockdotnet6-stockmono lane

Missing the why.

aarani and others added 3 commits August 29, 2023 15:01
This allows for building Backend and Frontend.XF with
separate build engine like .NET 6.
This commit allows for using legacy and non-legacy build
tools together to build GTK frontend without using MS's
binaries (newmono-msbuild).

It works by building .NETStandard project (that xbuild can't
build) using .NET6 and building GTK project using xbuild.

Co-authored-by: Afshin Arani <[email protected]>
Now that we removed [1] NuGet.Restore.targets, and NuGet.exe
gets downloaded by Fsdk via WebClient, I don't think we need
curl anymore.

[1] 04277ed
@knocte
Copy link
Member

knocte commented Aug 31, 2023

This allows building GTK frontend on this lane.

No, not only this. The previous commits did. You could mention their commit hashes.

Backend.Tests,Frontend.Console: adjust obj path

And why do this again?

@aarani
Copy link
Contributor Author

aarani commented Aug 31, 2023

And why do this again?

Previous commit was for just Backend, these are for the other two projects.

This commit alongside [1] allow for building GTK front-
end on this lane.

[1] 7f6c88d
@knocte
Copy link
Member

knocte commented Aug 31, 2023

Previous commit was for just Backend, these are for the other two projects.

That's not answering my question :)

@aarani
Copy link
Contributor Author

aarani commented Aug 31, 2023

This allows building GTK frontend on this lane.

No, not only this. The previous commits did. You could mention their commit hashes.

Backend.Tests,Frontend.Console: adjust obj path

And why do this again?

Because there were build errors and I had to? :\

@knocte
Copy link
Member

knocte commented Aug 31, 2023

You know, the result of the configue.sh/configure.bat status includes now the Frontend type in it, but it's referring to the default frontend (the one run when using 'make run'). But the commit "scripts/make: build frontend when dotnet exists" should probably change this to show "Frontend: Console (default) & XamarinForms" but only on macOS, which is the only platform where both frontends are built and the default is not XF.

@knocte
Copy link
Member

knocte commented Aug 31, 2023

Because there were build errors and I had to? :\

And why is that REAL REASON not included in the commit msg?

Before this commit, we were assuming that legacy tools
were not present if dotnet was present. Now, if dotnet
is present, and legacy tools also are (so that the XF
frontend can be built), then make will build the frontend.

Obj path in some projects had to be changed like it was
done in [1] because building same project once with dotnet
and once with MSBuild causes problems (it happens in macOS
when both mono and dotnet exist).

[1] 6b3c64e

run: sudo DEBIAN_FRONTEND=noninteractive apt install --yes git make dotnet6 mono-xbuild fsharp
- name: install GTK libs (dependency of GTK frontend)
run: sudo apt install -y libgtk2.0-cil-dev
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we should use --yes here, not -y

There have been some recent cosmetic commits so it's better to
group them here to avoid git-blame pollution.
@knocte knocte merged commit 31870f9 into nblockchain:frontend Oct 13, 2023
19 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants