<div dir="ltr"><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><br></div><br><div class="gmail_quote"><div dir="ltr">On Wed, Oct 3, 2018 at 2:44 PM Regina Obe <<a href="mailto:lr@pcorp.us" target="_blank">lr@pcorp.us</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">> <br>
> The current situation is really that CMake is a contributed module and the<br>
> official build tool _is_ autotools. The problem reported in that<br>
> RFC7 is not well-posed in that it assumes contributors are _required_ to<br>
> support multiple build systems.<br>
> Truth is they only need to support autotools,<br>
[Regina Obe] <br>
Yes they are required to support multiple build systems without CMake.<br>
E.g. Lots of people on windows building with Visual Studio use GEOS which means we need to support NMake if we don't support CMake.<br>
<span class="gmail_default" style="font-family:arial,helvetica,sans-serif"></span>Autotools is not supported on native Windows.  Cmake can make VS solution files.<br>
<br>
Also Autotools hasn't worked for me for a long time even under Mingw64.<br>
Though in theory if I were energetic enough, I guess I could try to troubleshoot it.<br>
<br>
> How problematic would that be for contributors ?<br>
> <br>
> --strk;<br>
Extremely problematic if we drop CMake.<br>
<br></blockquote><div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default">What ever you drop will be problematic.</div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default"><br></div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default">About packagers</div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default">if system FOO packager use autotools to build GEOS, and autotools is dropped then they have to change to Cmake</div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default">if system BAR packager use Cmake to build GEOS, and autotools is dropped then they have to change to autotools</div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default"><br></div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default">if want to remove X, where X IN (Cmake autotools Nmake) then ask packagers what they use and ask them also</div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default"> how difficult is for them to build with Y, where Y IN (Cmake autotools Nmake) AND X != Y</div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default"><br></div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default">We already have an answer from Regina, "Autotools is not supported on native Windows."<br></div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default"><br></div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default">About contributors<br></div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default">if contributor A  use autotools to build GEOS, and autotools is droped then they have to change (& probably learn) to Cmake <br></div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default">if contributor B  use Cmake to build GEOS, and autotools is droped then they have to change to (& probably learn) autotools</div></div><div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default"><br></div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default">For simple contributions like bug fixes, there is no problem the contributor has nothing to do with autotools or Cmake or Nmake</div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default">if GEOS were using only Autotools then as C++ programmer I focus on C++ and no need to change  autotools or Cmake or Nmake, test it on travis & appveyor<br></div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default">if GEOS were using only Cmake then as C++ programmer I focus on
 C++ and no need to change  autotools or Cmake or Nmake, test it on travis & appveyor</div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default"><br></div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default">For more complex contributions like adding a test file.</div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default">If the contributor knows Cmake, add the test file, and leave to the autotools expert & Nmake expert the change so it works on that also</div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default">If the contributor knows autotools, add the test file, and leave to the 
Cmake expert & Nmake expert the change so it works on that also</div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default">if the contributor does not know autotools or Nmake or Cmake, add the test file, and leave to the 
Cmake expert & Nmake expert the change so it works on everything</div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default"> - try not to ask the contributor to be experts on  autotools and Nmake and Cmake to make their contribution.</div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default"> - I know Cmake, but changes on autotools I do are by imitation and test on Travis. (personally I refuse to learn autotools just because of GEOS, so imitation is OK for me)<br></div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default"><br></div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default">Current state:</div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default">- Cmake right now has issues (not building everything that autotools builds)<br></div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default">- Cmake has to be improved (dbaston has a beautiful CmakeLists file for GEOS in a branch)</div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default"></div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default"><br></div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default">My conclusion is:<br></div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default">- Supporting  autotools and Nmake and Cmake means a lot of overhead work for the experts.</div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default">  - So, yes, try to keep to the minimum the building process.</div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default">  - NOTE: I am biased to: keep Cmake only & drop  autotools and Nmake <br></div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default"></div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default">- GEOS will get to the majority of the users as a package.</div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default">  - Ask packagers what they use and also what they can not use. (Like Reginas example). <br></div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default"><div style="font-family:arial,helvetica,sans-serif" class="gmail_default">  - if CMake happens to work for windows and linux, why keep Nmake?<br></div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default">  - if CMake happens to work on all systems, why keep autotools?</div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default"></div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default">  - Warn packagers on any decision made: "For v3.100 GEOS will be using Cmake exclusively."</div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default">  - While transition to whatever is decided, don't ask the contributor to be experts on  autotools and Nmake and Cmake to make their contribution.</div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default"></div></div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default"></div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default">- If, for example, linux packagers use CMake to build GEOS for linux, then there is no need to test autotools on linux. (see bellow)<br></div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default">- IMPORTANT: if CMake happens to work on all systems, <br></div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default">  - Do not drop autotools until CMake builds everything</div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default">    - It is not building everything, is one of the issues it has now.</div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default">  - During transition time<br></div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default">    - keep on things as they are now.<br></div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default"></div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default"><br></div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default">Use dbastons CMakeLists.txt work its cleaner. So maybe instead of v3.100 is v3.50 when the change happens<br></div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default"></div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
_______________________________________________<br>
geos-devel mailing list<br>
<a href="mailto:geos-devel@lists.osgeo.org" target="_blank">geos-devel@lists.osgeo.org</a><br>
<a href="https://lists.osgeo.org/mailman/listinfo/geos-devel" rel="noreferrer" target="_blank">https://lists.osgeo.org/mailman/listinfo/geos-devel</a></blockquote></div><br clear="all"><br>-- <br><div dir="ltr" class="m_31128471884401248gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><pre>Georepublic UG (haftungsbeschränkt)
Salzmannstraße 44, 
81739 München, Germany

Vicky Vergara
Operations Research

eMail: vicky@<a href="http://georepublic.de" target="_blank">georepublic.de</a>
Web: <a href="https://georepublic.info" target="_blank">https://georepublic.info</a>

Tel: +49 (089) 4161 7698-1
Fax: +49 (089) 4161 7698-9

Commercial register: Amtsgericht München, HRB 181428
CEO: Daniel Kastl

<span></span></pre></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div>