cmake rework (not again, still)
glance at acc.umu.se
Tue Nov 24 00:18:52 PST 2015
On 23 November, 2015 - Tomaz Canabrava wrote:
> On Mon, Nov 23, 2015 at 1:26 PM, Dirk Hohndel <dirk at hohndel.org> wrote:
> > On Mon, Nov 23, 2015 at 01:07:59PM -0200, Tomaz Canabrava wrote:
> > > So, a bit of history
> > >
> > > Dirk asked me to make subsurface compile in iOS and adding another target
> > > to our cmake would be quite a task in the state that it currently was:
> > >
> > > we could:
> > > - use the desktop version on mobile
> > > - use the mobile on desktop
> > > - use cmake to find some libraries
> > > - use pkg-config to find the same libraries
> > > - a *lot* of boilerplate code on cmake
> > > - build subsurface in source, outsorce
> > >
> > > I oversimplified some things and not everybody will be happy, so this is
> > a
> > > call for a little chat, nothing that I did is fixed in stone and I can
> > > revert lots
> > >
> > > now, in my desktop I have around 25 patches that rework the cmake in the
> > > following way:
> > >
> > > - desktop version only on desktop
> > Anton will be unhappy, but I'll let him comment on that
> as I said, tons of what I did I can rework to make people happy.
Subsurface desktop and Subsurface mobile will probably never be exactly
feature parity between, so building both against both targets will
really help with development.
> > > - mobile version only on android (iOS to come)
> > That's not going to work. The turn-around time for development of the
> > mobile app if you have to deploy on a mobile OS (even if it's an
> > emulation) is at least an order of magnitude longer than just doing a
> > build on Linux (or MacOS) and running Subsurface-mobile there. While for
> > many things you have to build and test for/on iOS and Android, for a lot
> > of other code that is not necessary at all. In fact, I tend to do all the
> > work I do on Subsurface-mobile on Linux and only once it works there to my
> > satisfaction do I try an Android build and test on a device.
> > So no, Subsurface-mobile needs to be able to be compiled at least on
> > Linux, and likely on MacOS as well.
> okay, will redo that part.
The same way as when developing on Subsurface-mobile, its really useful
to be able to run it on your development machine, when developing
backend stuff which we currently don't have a ui in Subsurface-mobile
for, its really useful to be able to build Subsurface-desktop for
Ex. Subsurface-mobile doesn't have a ui for downloading from dc's, but
Subsurface-desktop does. Its tricky to use Subsurface-desktop on a
Android device, but it serves the great purpose to be able to actually
test the code.
So, I'm strongly for keeping the concepts of Application (Desktop vs.
Mobile) separate from which target you're building for (Android vs.
Linux vs. whatever).
Anton Lundin +46702-161604
More information about the subsurface