This is my followup to Jeff's review of ubc3 license status.
The current status of this work is here:
https://github.com/mhaberler/linuxcnc/commits/license-cleanup .
See per-item notes below.
General notes:
I have tagged all clearly completely new files as LGPL2.1+ in agreement with
the other contributors.
The rest of RTAPI has seen significant refactor, meaning the common subset of
filenames and hence history is rather small. Some code fragments from vanished
files live on under different name. This mostly affects
rtapi_{task,time,shmem}.* and rtai-* plus includes.
In that case I have followed Jeff's example and attributed these files to
'Various Authors' as GPL2(+) as I saw fit.
I have no intent of cutting out other people's contributions from history, so
if you are an RTAPI contributor and suggest a different approach, please review
this branch now and send me a patch or a suggestion.
The complete list of src/rtapi contributors as per master is here:
http://static.mah.priv.at/public/rtapi-comitters.txt
---
I will leave this open for review and comments for a few days, then merge in
Charles' license fixups and merge into unified-build-candidate-3.
Please advise if this ok with you - this is the time to speak up.
--
I take the same effort in meticulousness and fervor will go into cleaning up
the long-standing licensing issues in the existing code base.
I look forward the results of this effort - I am sure in this case it should be
possible to arrive at a GPL2+ core code base and everybody wins.
- Michael
Anfang der weitergeleiteten Nachricht:
> Von: Jeff Epler <[email protected]>
> Betreff: Aw: [Emc-developers] Unified Build/ "new RTOS" work: general
> availability for testing
> Datum: 11. September 2013 21:34:02 MESZ
> An: EMC developers <[email protected]>
> Antwort an: EMC developers <[email protected]>
>
> I inspected the list of files added in the ub3 branch for potential
> problems. Unfortunately, I have found some. The most serious
> categories are: Files with an "All Rights Reserved" copyright notice,
> files with no copyright or license declaration, and files not "in the
> preferred form for modification" (minified js files). There are also
> some minor issues I noticed.
>
> In my view, being aware of these "All Rights Reserved", no-license, and
> preferred-form problems, we MUST resolve them before merging the branch.
>
> I think it would be very fortunate if we can ensure that all code added
> in this branch was "GPLv2+" but I would personally not let a GPLv2-only
> file stand in the way of its adoption.
>
> = configs/ARM/BeagleBone/BeBoPr-Bridge/BB-LCNC-BEBOPRBR-00A0.dts
> = configs/ARM/BeagleBone/K9/Device_Tree_Overlays/BB-BLACK-LCNC-K9-00A0.dts
> = configs/ARM/BeagleBone/K9/Shapeoko/temp/LCNC-BBB-K9S-00A0.dts
>
> Do not contain license declaration. Are these generated files or are
> they all hand-written?
>
> = configs/ARM/BeagleBone/BeBoPr-Bridge/dtc.sh and other new sh files
Those will be fixed by merging Charles's cleanup branch, see his previous mail
on the issue.
> Does not contain license declaration. Some appear to be duplicated in
> multiple
> directories; use our facility configs/common so that build process copies to
> each destination. Or put them in scripts/ if sensible.
>
> = configs/ARM/pru-examples/stepgen.p
already covered in
https://github.com/cdsteinkuehler/linuxcnc/commits/unified-build-candidate-3-fixups
>
> This file seems to be duplicated in multiple locations
>
> = scripts/gen-rtapi.ini.sh.in.tmpl
> = scripts/kernel-vers.sh
> = scripts/pru_debug
>
> Does not contain license declaration
covered.
>
> = scripts/latency-test-atom
>
> Why not merged with scripts/latency-test ?
good point, but not relevant for licensing
> = src/emc/usr_intf/emccontroller.cc
> = src/emc/usr_intf/emccontroller.hh
> = src/emc/usr_intf/emcweb.cc
> = src/emc/usr_intf/emcweb/singleton.hh
>
> Please get clearance to license as GPLv2+ from Author
got clearance, Sergey will adopt my changes and reflect them in his repo.
> = src/emc/usr_intf/emcweb/mongoose.c
> = src/emc/usr_intf/emcweb/mongoose.h
>
> DOS line endings.
fixed.
> = src/emc/usr_intf/emcweb/mongoose_wrapper.cc
> = src/emc/usr_intf/emcweb/mongoose_wrapper.hh
> = src/emc/usr_intf/emcweb/singleton.hh
>
> Does not contain license declaration
added license declaration to original author as suggested by Sergey.
> = src/linuxcncconfig.py-tmp.in
>
> Does not contain license declaration
done
for the following, see comment above except as per-file notes:
> = src/rtapi/flavor.c
> = src/rtapi/num2nam.h
---^^^^^^^^^^^^^^^^^^^ deleted, since unused
> = src/rtapi/ring.h
copied in Pavel's preferred license (MIT) for his code, and copied in Portable
Audio license for the stream ring code.
> = src/rtapi/rsyslogd-linuxcnc.conf
> = src/rtapi/rt-preempt.c
> = src/rtapi/rt-preempt.h
> = src/rtapi/rtapi_common.c
> = src/rtapi/rtapi_compat.c
> = src/rtapi/rtapi_compat.h
> = src/rtapi/rtapi_exception.c
> = src/rtapi/rtapi_kdetect.c
> = src/rtapi/rtapi_main.c
> = src/rtapi/rtapi_module.c
> = src/rtapi/rtapi_msgd.c
> = src/rtapi/rtapi_shmem.c
> = src/rtapi/rtapi_support.c
> = src/rtapi/rtapi_task.c
> = src/rtapi/rtapi_time.c
> = src/rtapi/rtai-kernel.h
> = src/rtapi/rtapi_compat.h
> = src/rtapi/rtapi_exception.h
> = src/rtapi/rtapi_export.h
> = src/rtapi/rtapi_io.h
> = src/rtapi/rtapi_kdetect.h
> = src/rtapi/rtapi_mbarrier.h
> = src/rtapi/rtapi_pci.h
> = src/rtapi/rtapi_shmkeys.h
> = src/rtapi/shmdrv/shmdrv.h
> = src/rtapi/userpci/list.h
---^^^^^^^^^^^^^^^^^^^^^^^^ this file is taken from kernel code, and is GPL
afaict. It would need replacement work if all of RTAPI goes GPL2+. One route is
to replace the functionality by <sys/queue.h> which is BSD licensed.
> = src/rtapi/rtapi_global.h
> = src/rtapi/shmdrv/mutexwatch.c
> = src/rtapi/shmdrv/shmdrv.c
> = src/rtapi/shmdrv/shmdrvapi.c
> = src/rtapi/ulapi_autoload.c
> = src/rtapi/ulapi_main.c
> = src/rtapi/xenomai-kernel.c
> = src/rtapi/xenomai-kernel.h
> = src/rtapi/xenomai.c
> = src/rtapi/xenomai.h
> Does not contain license declaration
General note above applies.
> = src/rtapi/rtapi_pci.c
>
> Please get clearance to license as GPLv2+ from Author
Michael Büsch agreed to relicense all his code as LGPL2.1+ . This applies to
rtapi_pci.c and rt-preempt.* files. Done.
> = src/rtapi/xeno_math/.e_acos.o.d
>
> Should not be shipped
>
> = src/rtapi/xeno_math/GNUmakefile.am
> = src/rtapi/xeno_math/GNUmakefile.in
> = src/rtapi/xeno_math/Makefile
> = src/rtapi/xeno_math/Makefile.kbuild
>
> Which of these files (if any) are used?
>
> = src/rtapi/xeno_math/ceilfloor.c
> = src/rtapi/xeno_math/frexpldexp.c
> = src/rtapi/xeno_math/logb.c
> = src/rtapi/xeno_math/rndint.c
> = src/rtapi/xeno_math/scalb.c
> = src/rtapi/xeno_math/sign.c
> = src/rtapi/xeno_math/fpP.h
>
> Contains "All rights reserved" copyright declaration
all of the above have been fixed for a while in ubc3.
>
> = src/rtapi/xeno_math/s_signgam.c
>
> Does not contain license declaration
I deleted all unneeded files, there are none left of dubious license status. In
terms of licensing, this directory is now cleaner than RTAI rtapi_math, which
is an outstanding issue for the RTAI builds, but will hopefully be solved
upstream.
>
> = src/rtapi/xeno_math/libm.c
>
> Please get clearance to license as GPLv2+ from Author
This file is a complete rewrite by me, and also trivial, so I attributed it to
myself.
>
> = tests/bitops.0/bitops.c
> = tests/rtapi.0/rtapi_test.c
>
> Does not contain a license declaration
fixed.
>
> = www/js/jquery-1.4.2.min.js
> = www/js/jquery-ui-1.8.custom.min.js
> = www/js/jquery.jqGrid.min.js
>
> Minified source is not the Preferred Form for Modification
Interesting. Please suggest a better approach.
>
> = www/js/miniemc2.js
>
> Please get clearance to license as GPLv2+ from Author
done, as granted by Sergey.
>
>
> ------------------------------------------------------------------------------
> How ServiceNow helps IT people transform IT departments:
> 1. Consolidate legacy IT systems to a single system of record for IT
> 2. Standardize and globalize service processes across IT
> 3. Implement zero-touch automation to replace manual, redundant tasks
> http://pubads.g.doubleclick.net/gampad/clk?id=51271111&iu=/4140/ostg.clktrk
> _______________________________________________
> Emc-developers mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/emc-developers
------------------------------------------------------------------------------
Sponsored by Intel(R) XDK
Develop, test and display web and hybrid apps with a single code base.
Download it for free now!
http://pubads.g.doubleclick.net/gampad/clk?id=111408631&iu=/4140/ostg.clktrk
_______________________________________________
Emc-developers mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/emc-developers