Opened 8 years ago

Closed 8 years ago

Last modified 8 years ago

#27747 closed enhancement (fixed)

readline-5: let to install libreadline.dylib (allow linking from GPLv2 programs)

Reported by: kimuraw (kimura wataru) Owned by: macports-tickets@…
Priority: Normal Milestone:
Component: ports Version: 1.9.2
Keywords: Cc: ryandesign (Ryan Schmidt)
Port: readline-5

Description

The current version of port:readline-5 installs only header files. I hope port:readline-5 to provide .dylib files.

The license of readline was changed to GPLv3+ from GPLv2+ at version 6. Programs licensed under GPLv2, such as "ruby", cannot link readline-6.x.

I make a patch to provide .dylib files. The patched port installs

  • header files: ${prefix}/include/readline5
  • library files: ${prefix}/lib/readline5

I've checked no ports depends on port:readline-5. So I think this change do not have problems.

Attachments (1)

patch-readline-5.diff (6.5 KB) - added by kimuraw (kimura wataru) 8 years ago.

Download all attachments as: .zip

Change History (13)

Changed 8 years ago by kimuraw (kimura wataru)

Attachment: patch-readline-5.diff added

comment:1 Changed 8 years ago by jmroot (Joshua Root)

Technically you just can't distribute the result of linking GPL2-only code with GPL3-only; it's fine to create and use it. Regarding the patch, you probably want to do something about the -arch_only `/usr/bin/arch` in the SHLIB_XLDFLAGS, as that often won't match build_arch/universal_archs.

comment:2 Changed 8 years ago by ryandesign (Ryan Schmidt)

  • r74544: indicated license in readline port

comment:3 Changed 8 years ago by ryandesign (Ryan Schmidt)

  • r74545: committed your patch; in addition, changed license to "GPL-2+", changed dist_subdir to match readline port's, since the distfiles are already on the mirrors there (no need to make people download the same file a second time, nor to mirror it a second time). Joshua, the port seems to build fine for universal and for non-default-build_arch as supplied; I'm not sure what the -arch-only flag does.

comment:4 Changed 8 years ago by ryandesign (Ryan Schmidt)

Resolution: fixed
Status: newclosed
  • r74546: indicated license in readline-4 port. Do you perhaps want to work on a similar update for the readline-4 port? It too seems to only install headers at this point.

comment:5 Changed 8 years ago by ryandesign (Ryan Schmidt)

Cc: ryandesign@… added

comment:6 Changed 8 years ago by kimuraw (kimura wataru)

thanks jmr and ryandesign!

I think we need not to update readline-4 like readline-5. there is no ports depend on port:readline-4.

comment:7 Changed 8 years ago by ryandesign (Ryan Schmidt)

Shall we delete readline-4, then? It was added in r8080, over 6 years ago, "for ports requiring it"; if none do, it has outlived its purpose. It also claims "It provides [...] the dynamic libraries"; since it does not in fact provide the dynamic libraries, that's not useful either. We should either fix readline-4 or delete it.

comment:8 Changed 8 years ago by ryandesign (Ryan Schmidt)

As it happens, no ports depend on readline-5 either.

comment:9 Changed 8 years ago by ryandesign (Ryan Schmidt)

Except for ruby and ruby19, now that you've changed them in r74587 and r74588. But as Joshua said, there is no license incompatibility as long as we're just building from source and not distributing binaries. I also don't think we've made any attempt to handle license incompatibilities in any of our other ports. :/

comment:10 Changed 8 years ago by kimuraw (kimura wataru)

Thanks, I understand to install ruby and readline-v6 with MacPorts do not violates licenses. I'll revert the changes in r74587 and r74588 at upgrading ruby/ruby19 in this weekend. new release of ruby-1.8.7 and ruby-1.9.2 are planed at 2010-12-25. then, we can delete port:readline-4 and port:readline-5.

comment:11 Changed 8 years ago by kimuraw (kimura wataru)

I've reverted r74587 and r74588. # at r74636 and r74637

now, there are no ports depends port:readline-5

comment:12 in reply to:  7 Changed 8 years ago by ryandesign (Ryan Schmidt)

Replying to ryandesign@…:

We should either fix readline-4 or delete it.

replaced_by readline in r77428

Note: See TracTickets for help on using tickets.