Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 01 Jun 2021 20:33:57 +0000
From:      bugzilla-noreply@freebsd.org
To:        ports-bugs@FreeBSD.org
Subject:   [Bug 256355] games/jaggedalliance2: update to 0.18.0. Second attempt.
Message-ID:  <bug-256355-7788@https.bugs.freebsd.org/bugzilla/>

next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D256355

            Bug ID: 256355
           Summary: games/jaggedalliance2: update to 0.18.0. Second
                    attempt.
           Product: Ports & Packages
           Version: Latest
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: Individual Port(s)
          Assignee: ports-bugs@FreeBSD.org
          Reporter: timp87@gmail.com

Created attachment 225477
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=3D225477&action=
=3Dedit
port patch

This is a second attempt to update games/jaggedalliance2 to 0.18.0. See
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D255399 for the first on=
e.

It uses cmake and cargo (some component written in rust) and has some exter=
nal
dependencies to be downloaded during build process.
So the build process for JA2-Stracciatella is not packaging friendly:
- there are rust crates the project depends on which can't be handled by po=
rts
infra. Fortunately those crates are for android build. But I couldn't find =
any
way to tell cargo to skip those dependencies to be downloaded.
patch-rust_stracciatella__c__api_Cargo.toml and
patch-rust_stracciatella_Cargo.toml patches are removing not needed crates =
from
Cargo.toml files. Cargo is able to see that and skip them.
- there are dependencies written in C/C++. Current cmake build process prov=
ides
a way to use packages already installed in your system for some of those
dependencies.  But there are new ones appeared in this release which don't =
have
such a way. Those are lua, sol2 and miniaudio. So it always downloads and
builds them during build step.
patch-dependencies_lib-lua_CMakeLists.txt and
patch-dependencies_lib-sol2_CMakeLists.txt handle lua and sol2 dependencies.
Miniaudio is trickier. We have a port for it. But it's incomplete for ja2
usage. We have bare minimum in our port, while ja2 build wants files from
extras  dir of miniaudio project (see https://github.com/mackron/miniaudio)=
. So
I added a dirty stuff with GH_TUPLE and pre-patch with REINPLACE to make it
sure miniaudio sources are downloaded and it can start building.

If anybody can advice me something I miss, please, do.

I'll try to upstream those patches and rise my concerns in their github.

This port patch also adds more dependencies I found it was looking during
configure step.

--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-256355-7788>