Contributors/Relicensing

From OHRRPGCE-Wiki
Jump to navigation Jump to search

We are planning to relicense the OHRRPGCE source code to GPL+MIT dual license. This will make future porting on to consoles much easier.

However, because of the way the GPL license works, the only way for us to make this change to add the dual MIT license is to get consent from all contributors. This page is for us to track the progress of that process.

As of 2021-12-01 we have collected consent from all the contributors, but we still need to update the license notification in the code.

Contributors[edit]

Name Status Contact By Agreement?
James Paige Contributed code email YES
Ralph Versteegen Contributed code email YES
Mike Caron Contributed code email YES
Simon Bradley Contributed code email YES
David Gowers Contributed code email YES
Yuriy Melnichenko Contributed code email YES
Jay Tennant Contributed code linkedin/Email YES
Matthias Meike (Wendigo) Contributed code email YES
Adam Perry Contributed code email YES
Lakan David D. Inocencio (BMR) Contributed code email YES
MirceaKitsune (Taoki) Contributed code email YES
Daniel Würl (DWRL) Contributed code email YES
SwordPlay Contributed code email YES
zzo38 Contributed code ? YES
Reaxor Jones Contributed, no code left email not required
MCW Contributed, no code left ? not required
Cameron Wilkin (Camdog) Contributed, no code left ? not required
Brian Fisher Non-GPL contributor email not required
Ironhoof Non-GPL contributor ? not required
Lenny Non-GPL contributor email not required

Libraries[edit]

This is a list of libraries which are either distributed in compiled form either with the source code, or with OHRRPGCE binary distributions. It doesn't include executables distributed with the source or with binary distributions.

Libraries Origin License Modifications Inclusion conditions Copyright/Attribution text
SDL, SDL2 https://www.libsdl.org zlib - gfx_sdl[2]/music_sdl[2] Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>
SDL_mixer, SDL_mixer 2 https://www.libsdl.org zlib Minor patches music_sdl[2] Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>
libmad https://www.underbit.com/products/mad/ GPL (any) - music_sdl[2] with our dlls; music_sdl 32-bit Mac using our SDL_mixer.framework; also runtime linked by Custom if installed, i.e. on Unix libmad - MPEG audio decoder library

Copyright (C) 2000-2004 Underbit Technologies, Inc.

mpg123 https://www.mpg123.de LGPLv2.1 - music_sdl2 with SDL2_mixer default builds, not our SDL2_mixer.dll Copyright (c) 1995-2013 by Michael Hipp and others, free software under the terms of the LGPL v2.1
smpeg https://icculus.org/smpeg/ LGPLv2 music_sdl if using default builds Written by Karl Robillard and Sam Lantinga, Loki Software, Inc.

Streaming MPEG support contributed by Vivien Chappelier. Audio is played through a slightly modified mpegsound library, part of Splay v0.8.2.

libogg/libvorbis https://xiph.org/vorbis/ BSD 3-clause - music_sdl[2] Copyright (c) 2002-2020, Xiph.org Foundation
opusfile/libopus https://opus-codec.org BSD 3-clause - music_sdl2 with SDL2_mixer default builds, not our SDL2_mixer.dll Copyright (c) 1994-2013 Xiph.Org Foundation and contributors

Copyright 2001-2011 Xiph.Org, Skype Limited, Octasic, Jean-Marc Valin, Timothy B. Terriberry, CSIRO, Gregory Maxwell, Mark Borgerding, Erik de Castro Lopo

libFLAC https://xiph.org/flac/ BSD 3-clause - music_sdl[2] with SDL2_mixer default builds, not using our SDL[2]_mixer.dll or SDL_mixer.framework (32-bit Mac) Copyright (C) 2000-2009 Josh Coalson

Copyright (C) 2011-2016 Xiph.Org Foundation

libmodplug https://github.com/Konstanty/libmodplug Public domain - music_sdl2, or music_sdl with our SDL_mixer.dll Based on the ModPlug sound engine by Olivier Lapicque <olivierl@jps.net>

XMMS plugin by Kenton Varda <temporal@gauge3d.org> (~2002) Maintainer is now Konstanty Bialkowski <konstanty@ieee.org> (~2006)

mikmod http://mikmod.sourceforge.net/ LGPL v2+ - music_sdl: SDL_mixer default builds unless using our SDL_mixer.dll (our 32-bit SDL_mixer.framework uses mikmod I think?) Jean-Paul Mikkers, Jake Stine, Frank Loemker and others
CrashRpt*.dll/CrashSender*.exe https://crashrpt.sourceforge.net/ BSD 3-clause Yes Windows builds (runtime-linked if available) Copyright (c) 2003, The CrashRpt Project Authors.
Allegro (alleg40.dll) https://www.allegro.cc "gift-ware" - gfx_alleg/music_allegro Shawn Hargreaves and the Allegro contributors

"given to you freely as a gift" ... "If you redistribute parts of this code or make a game using it, it would be nice if you mentioned Allegro somewhere in the credits, but you are not required to do this."

Audiere (audiere.dll) http://audiere.sourceforge.net/ LGPL (any) - music_native[2] Audiere: A High-Level Sound Playback System

Audiere (c) Chad Austin 2001-2003

libxml2 (win32/libxml2.a) http://xmlsoft.org/ MIT - Linked into xml2reload Copyright (C) 1998-2012 Daniel Veillard. All Rights Reserved.
libfb https://freebasic.net/ LGPL v2.1+ with classpath exception Mac and Android ports Always libfb - FreeBASIC's runtime library

Copyright (C) 2004-2021 The FreeBASIC development team.

libfbgfx2 https://freebasic.net/ LGPL v2.1+ with classpath exception - gfx_fb; also Windows builds (to show version info)

libgfx2 - FreeBASIC's alternative gfx library Copyright (C) 2005 Angelo Mottola (a.mottola@libero.it)


Executables[edit]

These are non-library programs which are distributed in compiled form either with the source code, or with OHRRPGCE binary distributions. There is no need to examine these closely, since they do not affect the engine's licensing and are not distributed with games (except Innosetup).

Innosetup, madplay, oggenc, rcedit, zip, unzip, wget, gzip, tar, jpegtran, RetrieveSymbols.exe, cv2pdb, sed, rm, docker/freebasic/FreeBASIC-1.05.0-linux-x86_64.tar.gz, docker/ohrrpgce-build-env/euphoria_4.0.5_amd64.deb, ...

CrashSender*.exe: see Libraries.

External code[edit]

Revise.png
This article or section is not complete. If you wish, you may finish it, and remove this tag when you are done.

An audit of all the code appearing in the OHRRPGCE code repository (whether used or not) either from external sources (not directly contributed to the OHRRPGCE by its author) or under licenses other than the OHRRPGCE (GPLv2+) license . This list is not finished. The following parts of the source have been completely audited so far: lib/, android/, audwrap/, docker/, misc/, gfx_common/, gfx_directx/, gfx_sdlpp/, vikings/

Unless noted otherwise, all modifications are by OHRRPGCE contributors.

Files Origin License Modifications Copyright/Attribution text and notes
audiofile.bas none GPL (any) - OHRRPGCE developers.

Dynamically loads and calls libmad (to read MP3 metadata), which is GPL licensed, therefore this code is also GPL.

base64.{c,h} Gnulib GPL v2+ No Copyright (C) 1999, 2000, 2001, 2004, 2005, 2006 Free Software Foundation, Inc.

Written by Simon Josefsson. Partially adapted from GNU MailUtils (mailbox/filter_trans.c, as of 2004-11-28). Improved by review from Paul Eggert, Bruno Haible, and Stepan Kasal.

bitmap.h FB's winapi headers, translated from MinGW.org (since re-translated from mingw-w64) Effectively public domain Yes MinGW.org (see [1], before release 4.0)

(mingw-w64 more explicitly states: "This file has no copyright assigned and is placed in the Public Domain")

music_native_subs.bas SDL_mixer's native_midi/native_midi_common.c Originally LGPL, converted to GPL by Mike. SDL_mixer (including this module, unchanged) since relicensed to zlib. Translated to FB, ConvertToRelative added Copyright (C) 2000,2001 Florian 'Proff' Schulze

Ported/extended by Mike Caron
SDL_mixer is Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>

rotozoom.c sdl2_gfx 2.0.4 zlib Heavily modified Copyright (c) 2012-2014 Andreas Schiffler

Andreas Schiffler -- aschiffler at ferzkopp dot net

unicode.c (UTF8 decoder) Flexible and Economical UTF-8 Decoder MIT Extended Copyright (c) 2008-2010 Bjoern Hoehrmann <bjoern@hoehrmann.de>

Copyright (c) 2012,2016-2018 Ralph Versteegen

unicode.c (UTF8 encoder) cutef8 Public domain (but unicode.c declares the file as MIT licensed) Added utf8_encode cutef8 by Jeff Bezanson, placed in the public domain Fall 2005
unicode.c (Unicode composition) none MIT (copied from UTF8 decoder) - Copyright (c) 2012,2016-2018 Ralph Versteegen
misc/generate_unicode_compose_table.cpp none Public domain - Ralph Versteegen
android/extract-pid.awk Android NDK Apache 2.0 No Copyright (C) 2010 The Android Open Source Project
android/gdb-commandline-program.sh Android NDK's ndk-gdb Apache 2.0 Some Copyright (C) 2010 The Android Open Source Project
audwrap/audiere.h Audiere 1.9.4 LGPL (any) Compile fix (c) 2001-2003 Chad Austin
lib/curses_wrap.c none Trivial - Ralph Versteegen
lib/gif.h https://github.com/rversteegen/gif-h/
(fork of https://github.com/charlietangora/gif-h)
Unlicense/Public domain Heavily modified gif.h by Charlie Tangora

Public domain. Email me : ctangora -at- gmail -dot- com

lib/gif.cpp none Public domain - Ralph Versteegen
lib/glibc_compat.c none Public domain - Ralph Versteegen
lib/jo_jpeg.{cpp,h} jo_jpeg JPEG Writer https://github.com/jpcy/jo_jpeg
(forked from jo_jpeg 1.52 https://www.jonolick.com/code)
Public domain Modifications by Jonathan Young Jon Olick
lib/lodepng.{c,h} LodePNG 20190210 zlib A bugfix Copyright (c) 2005-2019 Lode Vandevenne
lib/lodepng_gzip.c LodePNG 20190210 examples zlib Majority new Ralph Versteegen

Copyright (c) 2005-2019 Lode Vandevenne

lib/SDL/* (clipboard functions) SDL 2 zlib Heavily modified Simple DirectMedia Layer

Copyright (C) 1997-2017 Sam Lantinga <slouken@libsdl.org>

lib/msvcrt_compat.c Stack Overflow Trivial No Valentin Milea
lib/sha1.{c,h} SHA-1 in C Public domain Minor fixes By Steve Reid <steve@edmweb.com>
lib/stdc++compat.cpp Mozilla Mozilla Public License Version 2.0 Some Mozilla (mozilla-central has no copyright notices anywhere, even in the licence info!)
lib/termcap_stub.c none Trivial/Public domain - Ralph Versteegen
lib/ujpeg.{c,h} MicroJPEG -- KeyJ's Small Baseline JPEG Decoder 1.3.5 MIT Small extensions Copyright (c) 2009-2016 Martin J. Fiedler <martin.fiedler@gmx.net>
lib/win98_compat.bas none Trivial/Public domain - Ralph Versteegen
lib/x11_printerror.c Xlib (xorg-libX11) The Open Group license (like the X86Free license, similar to MIT) Heavily modified Copyright 2018 Ralph Versteegen

Copyright 1985, 1986, 1987, 1998 The Open Group

fb/*.h, gfx_common/fb_scancodes.h FreeBASIC's libfb/libfbgfx LGPL with classpath exception Some (deletions) Copyright (C) 2004-2016 The FreeBASIC development team.
vikings/ Vikings of Midgard GPL (any); graphics are public domain; music free with attribution Upgrades/script fixes (C) Copyright 2012 Fenrir-Lunaris. this game is distributed under the terms of the GNU General Public License.
nohrio (separate repo) none GPL (any) - David Gowers

License Summaries[edit]

Name Copyleft Notice requirements on binaries Other relevant requirements on distributing binaries
GPL Yes Must "carry prominent notices stating that it is released under this License", a copy of the GPL, and must tell where to get the source code. Also, "interactive user interfaces" must display "Appropriate Legal Notices" unless the original software didn't. (Language from GPLv3) Incompatible with closed platforms (many requirements)
LGPL Yes "If the work during execution displays copyright notices, you must include the copyright notice for the Library among them, as well as a reference directing the user to the copy of this License"; must provide a copy of the LGPL, and tell where to get the source (LGPLv2.1) Incompatible with closed platforms (must be able to debug modify and relink the library)
GPL/LGPL with classpath exception Yes? No None
MPL v2 Yes "You must inform recipients of the Executable Form how they can obtain a copy of such Source Code Form by reasonable means" (no requirement on how to do so, no copyright notice requirement) Compatible with closed platforms; EULA can't "attempt to limit or alter the recipients' rights in the Source Code";
BSD 3-clause No Reproduce license & copyright notices "in the documentation and/or other materials provided with the distribution" None
MIT No Notices "shall be included in all copies or substantial portions of the Software" None
zlib No "appreciated but is not required" None

Of course, all mentioned licenses mention (except public domain) require preserving copyright and license notices in the source code.