Dear Ed James, In message <[EMAIL PROTECTED]> you wrote: > I'm writing a standalone application that uses a non-GPL compatible library, > so I have to be careful not to derive from GPL code.
Thanks for taking care. > I've modified (and will release under the GPL) u-boot sources to export more > u-boot functions to the jump table, including get_ipaddr, do_dcache, > get_config_start, > ip_to_string, do_jffs2_fsload, do_bootm. My application downloads files from > a server using u-boot's tftp functions (via jump table), does some stuff, then > boots. > > Q1: Is this allowed? Can I add other u-boot functions to the jump table and > call > them from my standalone application w/o encumbering my application > with the GPL? > Yes, you can do that, but of course you have to release the modified source code of U-Boot under GPL. > Q2: About which specific include files may be included in a standalone app... > > The COPYING file explicitly calls out include/image.h and > include/asm-*/u-boot.h: ... > But it does not mention examples/stubs.c, which is required I believe to > use the jump table. I think there are other includes which are needed to You are right, stubs.c was forgotten when the code was changes a long time ago. Please submit a patch to add this to the COPYING file - we will then have to ask for permission from all the authors who contriobuted to that file. > build a meaningful standalone application, including common.h and exports.h. Ditto for exports.h. common.h should not be needed; it is under GPL and can only be used by GPL code. > My app directly includes the following, unmodified files: > > examples/stubs.c (linked with) > include/common.h > include/exports.h > include/net.h > include/linux/string.h include/common.h, include/net.h and include/linux/string.h are not allowed in non-GPL code. > and those indirectly include: > > include/config.h > include/asm/bitops.h > include/asm/byteorder.h > include/asm/global_data.h > include/asm/mach-types.h > include/asm/posix_types.h > include/asm/proc/ptrace.h > include/asm/ptrace.h > include/asm/setup.h > include/asm/string.h > include/asm/types.h > include/asm/u-boot-arm.h > include/asm/u-boot.h > include/cmd_confdefs.h > include/command.h > include/_exports.h > include/flash.h > include/ide.h > include/image.h > include/linux/bitops.h > include/linux/byteorder/generic.h > include/linux/byteorder/little_endian.h > include/linux/byteorder/swab.h > include/linux/config.h > include/linux/posix_types.h > include/linux/stddef.h > include/linux/types.h > include/part.h Of these, only include/image.h and include/asm/u-boot.h are allowed in non-GPL code. > Is such an standalone application still not considered a derived work? It has to be considered a derived work. > I'm looking for an authoritative answer, hopefully from Herr Denk. Above is just my $ 0.02 - remember that IANAL. Best regards, Wolfgang Denk -- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: [EMAIL PROTECTED] "Life is a garment we continuously alter, but which never seems to fit." - David McCord ------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ _______________________________________________ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users