Loading ...
Sorry, an error occurred while loading the content.

Re: Last Meeting ("Programming Red Flags") Summary + What's Next forTelFOSS?

Expand Messages
  • Shlomi Fish
    ... I would be interested in a separate presentation about SCons. Don t know about the other club attendees, but if you have the will and the time, then I say
    Message 1 of 2 , Jul 6 7:30 AM
    • 0 Attachment
      On Monday 06 July 2009 17:15:40 Dov Grobgeld wrote:
      > I have switched to scons a couple of years back and couldn't be happier.
      > Would there be an interest in me giving a separate presentation, or would
      > you prefer to have a shoot out. :-)

      I would be interested in a separate presentation about SCons. Don't know about
      the other club attendees, but if you have the will and the time, then I say
      "Go for it.".

      I've used SCons too for the base Latemp package, but didn't like it too much.
      SCons is probably better than the GNU Autotools, but I preferred to use CMake
      for converting Freecell Solver away from them (after hearing that the KDE
      people chose CMake for KDE 4.x), and have been pretty happy with CMake since.

      Regards,

      Shlomi Fish


      >
      > Regards,
      > Dov
      >
      > 2009/7/4 Shlomi Fish <shlomif@...>
      >
      > > Hi all!
      > >
      > > The "Programming Red Flags" meeting had a high attendance, and was
      > > generally
      > > very successful. Thanks to all the people who came and special thanks to
      > > Yaron
      > > for volunteering to give such a great talk. Yaron told me he is now
      > > working on
      > > an updated version of his slides, which he'll send to me for putting on
      > > the TelFOSS site, so expect it there soon.
      > >
      > > He had to cover some of his points more briefly due to lack of time, but
      > > it was still nice.
      > >
      > > So what's next? There's going to be a large void until August Penguin (
      > > http://august.penguin.org.il/ ) in August, so I'd like to fill it with
      > > something. Does anyone volunteer to give a presentation?
      > >
      > > There are some ideas here:
      > >
      > > * http://wiki.osdc.org.il/index.php/OSDClub
      > >
      > > * http://wiki.perl.org.il/index.php/Ideas_for_Presentations
      > >
      > > As a fallback, I can volunteer to give a presentation about CMake:
      > >
      > > * http://www.cmake.org/
      > >
      > > * http://en.wikipedia.org/wiki/CMake
      > >
      > > Some of you may recall my project about the GNU Autotools:
      > >
      > > http://www.shlomifish.org/lecture/Autotools/
      > >
      > > Well, I've recently switched wholesale to CMake and didn't look back. I
      > > never
      > > really liked GNU Autohell and now that I found a likeable better
      > > alternative,
      > > I don't have to use it.
      > >
      > > Of course, I'm not a good presenter, so it's only really a fall-back. If
      > > someone is interested in preparing the presentation with me, and then
      > > giving
      > > it instead of me, then let me know now.
      > >
      > > Regards,
      > >
      > > Shlomi Fish
      > >
      > > --
      > > -----------------------------------------------------------------
      > > Shlomi Fish http://www.shlomifish.org/
      > > Best Introductory Programming Language - http://xrl.us/bjn84
      > >
      > > God gave us two eyes and ten fingers so we will type five times as much
      > > as we
      > > read.
      > >
      > > _______________________________________________
      > > Linux-il mailing list
      > > Linux-il@...
      > > http://mailman.cs.huji.ac.il/mailman/listinfo/linux-il

      --
      -----------------------------------------------------------------
      Shlomi Fish http://www.shlomifish.org/
      http://www.shlomifish.org/humour/ways_to_do_it.html

      God gave us two eyes and ten fingers so we will type five times as much as we
      read.
    • Shlomi Fish
      ... Well, Offer was also referring to some threads on the KDE mailing lists (which I haven t read either). ... CMake supports all of those except perhaps
      Message 2 of 2 , Jul 7 3:38 AM
      • 0 Attachment
        On Monday 06 July 2009 20:33:33 Dov Grobgeld wrote:
        > I just reread the article Why the KDE project switched from scons to
        > CMake<http://lwn.net/Articles/188693/>and compared it to my needs:
        >

        Well, Offer was also referring to some threads on the KDE mailing lists (which
        I haven't read either).

        > - Support compilation over a fixed number of platforms: Linux, Linux
        > cross compilation for Windows, Windows mingw, Windows MS compiler,

        CMake supports all of those except perhaps Linux-cross-compile-for-Windows
        which I'm not sure about. It may exist or may not, but I'm not sure. CMake can
        also generate proper Microsoft Developer Studio projects.

        > Solaris. - Complete control over compiler flags for different platforms for
        > release and debug mode.

        CMake gives you that. I was able to override the C_FLAGS variable, etc.

        > - No need to run "configure" since the code either relies on the cross
        > platform glib infrastructure or ifdef's.

        I don't understand that point.

        > - A number of autogenerated h- and c-files through either perl or python
        > scripts.
        >

        You can easily use custom commands or invoke external executables or scripts
        with CMake. Naturally, this would mean the people building your program will
        need to have perl, python or whatever installed, but it's probably not a deal
        breaker.

        > The last of these options is probably the reason I dropped CMake from my
        > consideration list. E.g. the following code that I have in my scons files
        > is difficult to translate:
        >
        > def file2c(env, target, source):
        > out = open(str(target[0]), "wb")
        > inp = open(str(source[0]), "rb")
        >
        > for line in inp.readlines():
        > line = line.rstrip()
        > line = re.sub("\\\\", "\\\\", line)
        > line = re.sub("\\\"", "\\\"", line)
        > line = '"'+line+'\\n"\n'
        > out.write(line)
        >
        > out.close()
        > inp.close()
        >

        You can put this in a script and call it from CMake or create a custom target
        for it. You may also opt to write it in pure-CMake, but it's not absolutely
        necessary.

        Regards,

        Shlomi Fish

        > env.Command("menu-top-xml.i",
        > "menu-top.xml",
        > file2c)
        >
        > I.e. the dependency is resolved through a python function that is defined
        > within the "makefile". I think that scons is the only system that kind of
        > code. Whether it is sane is a different question...
        >
        > Regards,
        > Dov
        >
        > 2009/7/6 Offer Kaye <offer.kaye@...>
        >
        > > 2009/7/6 Dov Grobgeld :
        > > > I have switched to scons a couple of years back and couldn't be
        > > > happier.
        > >
        > > I read some of the threads of the KDE developers detailing how/why the
        > > moved from Autotools to CMake. It seems at first that actually SCons
        > > was the preferred contender, but when they looked into it more deeply
        > > they ran into trouble - apparently it was not mature enough and lacked
        > > all the features required for a project of the size and complexity of
        > > KDE4.
        > >
        > > Still it's probably good enough for less complex projects :)
        > >
        > > --
        > > Offer Kaye

        --
        -----------------------------------------------------------------
        Shlomi Fish http://www.shlomifish.org/
        "Humanity" - Parody of Modern Life - http://xrl.us/bkeut

        God gave us two eyes and ten fingers so we will type five times as much as we
        read.
      Your message has been successfully submitted and would be delivered to recipients shortly.