public inbox for cygwin-apps@cygwin.com
 help / color / mirror / Atom feed
* Advice needed on ffcall packaging
@ 2018-02-20 15:48 Ken Brown
  2018-02-20 17:26 ` Marco Atzeri
  2018-02-20 18:41 ` Yaakov Selkowitz
  0 siblings, 2 replies; 6+ messages in thread
From: Ken Brown @ 2018-02-20 15:48 UTC (permalink / raw)
  To: cygwin-apps

A few years ago I adopted ffcall (32-bit only) in order to keep it from 
disappearing from the distro:

   https://sourceware.org/ml/cygwin-apps/2015-07/msg00092.html

The latest upstream release builds on 64-bit Cygwin, so I'd like to 
update the package, and I'd like to find a sensible way of breaking it 
up into subpackages.  Here are the relevant facts:

1. Cygwin's existing (32-bit) ffcall is really a devel package: It 
consists of headers, four (static) libs, and documentation.  There are 
no subpackages and no shared libs.  The static libs are

   usr/lib/libavcall.a
   usr/lib/libcallback.a
   usr/lib/libtrampoline.a
   usr/lib/libvacall.a

2. The build of the current release produces the same four static libs, 
plus shared versions of the first three, plus a new lib, both static and 
shared (libffcall.a and cygffcall-0.dll).

If I were starting from scratch, I would have three packages: ffcall, 
libffcall0, and libffcall-devel.  ffcall would be source only; 
libffcall0 would contain the shared libs *.dll; and libffcall-devel 
would contain the headers, the import libs *.dll.a, and the one static 
lib for which there is no shared version.  I wouldn't ship the other 
static libs unless I discover later that they're needed for some reason.

But I'm not starting from scratch, and users of the existing ffcall will 
need the new libffcall-devel.  I can think of two possibilities for 
handling this:

A) Pretend that I'm starting from scratch, and deal with the fallout. 
There probably won't be any, since ffcall is not currently required by 
any other package.  As far as I know, its only use is that it's a build 
requirement for clisp, which I maintain.

B) Make three packages as above, with the source-only package being 
called libffcall instead of ffcall.  (libffcall is the upstream name 
anyway.)  I could then make libffcall-devel obsolete ffcall.

For the record, here's what Fedora does: Until a few months ago, there 
was only one package, ffcall, which contained everything.  At that time 
they created two subpackages, ffcall-devel and ffcall-static. 
ffcall-devel corresponds to my proposed libffcall-devel; ffcall-static 
contains all the static libs; and plain ffcall more-or-less corresponds 
to my proposed libffcall0.  This doesn't make a lot of sense to me.

Maybe this is much ado about nothing, but I'd appreciate advice.

Ken

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2018-02-21 14:26 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-02-20 15:48 Advice needed on ffcall packaging Ken Brown
2018-02-20 17:26 ` Marco Atzeri
2018-02-20 18:41 ` Yaakov Selkowitz
2018-02-20 19:24   ` Ken Brown
2018-02-21  5:43   ` Brian Inglis
2018-02-21 14:26     ` Ken Brown

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).