On Sun, 2024-06-23 at 10:27 +0200, Antonio Borneo wrote:
> 
> On Sat, Jun 22, 2024 at 9:20 AM Marc Schink <d...@zapb.de> wrote:
> > A more general question: what is the reason for integrating jimtcl
> > as a
> > submodule in the first place? According to repology it seems to be
> > widespread. We deprecated the libjaylink submodule, what is the
> > reason
> > to keep jimtcl?
> 
> I'm not aware of the reason for this; I was not contributing to
> OpenOCD at that time.
> I can imagine it was 'comfortable' to build OpenOCD without relying
> on installed dependencies.
> Git log show that:
> - 2009-10-28 added tools/git2cl
> - 2010-10-29 added jimtcl
> - 2015-11-26 added src/jtag/drivers/libjaylink (your commit dated
> 2014-10-20)
> 
> Personally, I use a lot 'git worktree', which unfortunately is not
> well integrated with 'git submodule'.
> Each worktree has to keep an independent out-of-sync clone of each
> submodule, which is completely crap! (it's also a waste of disk
> space).
> 
> I'm aware of few ACI that don't use OpenOCD submodules in order to
> prevent the build server from accessing the network.
> 

Yes, I had to deploy OpenOCD in an environment without internet access
recently. Git submodules are not helpful here too ;D

> Then:
> - libjaylink is already present as an independent package in several
> Linux distributions. I have no concern about keeping it as an
> external dependency.
> 
> - jimtcl package instead is not so popular. In Arch Linux it is in
> AUR only. But this would change if we force it as an external
> dependency.
> 
> - git2cl is only used for OpenOCD releases. We could keep it as a
> submodule and change the default of bootstrap to no-submodule.
>   git2cl is apparently not maintained anymore, so it could even be
> copied in our code, but since it's GPL2.0-only I prefer keeping it
> outside!

Where do we actually use git2cl? The ChangeLog file (also in releases)
is "empty" and we have a seperate (manually generated) NEWS file
anyway.

> I would suggest to progressively drop the submodules to see what the
> feedback is.
> - libjaylink submodule would be deprecated in v0.13.0. Would it be
> dropped in v0.14.0?
> - jimtcl submodule could be deprecated in v0.14.0 and dropped later
> on.
> - git2cl submodule could remain, but with bootstrap defaulting to no-
> submodule already in v0.14.0.
> Or, we could be more aggressive by also deprecating jimtcl submodule
> in v0.13.0!

Yes, I would prefer to deprecate jimtcl already in 0.13.0 if no one
comes up with a good reason why we should wait for the next release. I
will prepare some commits.

Best regards,
Marc


Reply via email to