Menu

Lazarus + JCF

Developers
2008-05-07
2013-05-23
  • Paul Ishenin

    Paul Ishenin - 2008-05-07

    Dual licence is a great thing and I already started looking at code. First day brought this questions/problems.

    1. Linking with JCL.

    JCF uses jcl units in several places. They are: JclStrings, JclFileUtils, JclSysUtils. These units are only MPL at moment and as I know they cannot be GPLed because of copyright problems.
    So we have few options:
    - add needed stuff from used units inside one, ask GPL only for that things and replace JCLxxx by that unit. Or we can reimplement this stuff and place it there.
    - IFDEF parts of JCF where it uses JCL and replace use of JCL functions with RTL functions where is possible.

    In other words this is the first part where we should invent some solution which you can accept.

    2. inc file

    JCF doesnot use generic inc file with defines. I understand - JCF never needed it before since was only delphi tool. To compile JCF with FPC we need to place at least {$IFDEF FPC}{$mode delphi}{$ENDIF} define at the top of overy JCF file. Better to place all such stuff (delphi version determination, fpc, switches and so on) into one inc file and simple use it in every unit.

    I've seen JCF uses jcl inc file somewhere but better to create own for this big project.

    ---
    If second point is more or less understandable I dont know a good solution for the first point.

    And the last question. Is it possible to contact you in another form? Maybe mail list / irc channel?

    If you want to contact me directly please use this email:
    Paul(dot)Ishenin(dog)gmail(dot)com

    Best regards,
    Paul Ishenin.

     
    • TridenT

      TridenT - 2008-05-07

      Hi, I'm a contributor of JCF project; and i' like to discuss about point 1.

      I'm not particulary familiar with licence, but i've seen this :

      JEDI's MPL licence summary:
      Project JEDI's implementation of the MPL allows developers to use its code in their applications ("Larger Work") regardless of whether the intended distribution will be in the public domain or as commercial applications, as long as the licence conditions are met.

      And this:
      Any Modification which You create or to which You contribute must be made available in Source Code form under the terms of this License either on the same media.

      As far as I understand, if the jcl-modified units:

      1/ Are distributed in their code source format
      2/ Have MPL licence text
      3/ Add Description of Modifications
      4/ Keep EXHIBIT A. from MPL

      then there is no problem. Am I right ?

      If so, it is only little work ...

       
    • Marco van de Voort

      No. GPL is fundamentally incompatible with MPL according to FSF.

      Mozilla had a solution for that, dual licensing MPL/LGPL, but when Jedi started, none of the projects chose that option. Later several projects that were still in contact with all its contributors changed (Jedi SDL and Math).

      The problem is that this is probably not doable for the JCL and JVCL because they have a relatively high number of contributors.

      For background info see e.g. http://wiki.freepascal.org/licensing

      For designtime components we can _partially_ work around that by letting the user do the final link, but for components with complex interfaces (like JCF) that is not really a solution.

       
    • Marco van de Voort

      Oh, and Jedi apilib also did, which it is currently part of the FPC distro

       
    • Anthony Steele

      Anthony Steele - 2008-05-07

      Hi Paul

      I have sent you an email.
      An include file can be done.

      We can move some code out of JCL* units. Some of the string functions were originally by me.
      The rest would have to reimplemented.

       
  • Anonymous

    Anonymous - 2010-07-16

    Es posible instalar los componentes en lazarus para linux, trabajo con ubuntu 10.4 y lazarus v0.9.28.2, si es posible me podrían ayudar

     

Log in to post a comment.