This is the mail archive of the cygwin-apps mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: fftw3 and octave


Marco Atzeri wrote:

the DLL are almost all the size of fftw3
so I can repakage as suggested, but it is probably not worth.

Not exactly. The import libraries are almost half the size of the DLLs; that's not insignificant. Here's what Volker is suggesting, I think (with perhaps a few things moved around). I've put the "basic" documentation in libfftw3-devel, and the "fancy, extra" documentation in fftw3-doc). You'll notice that with this division, the size is distributed across the packages -- if not evenly, then at least 'fairly'. Also, in this scheme, the 'main' package (fftw3, the one whose name matches the -src) contains only /usr/share README-style stuff. That's a fairly common occurance for DLL utilitity libraries.


libfftw3_3:
520704   /usr/bin/cygfftw3-3.dll
 70656   /usr/bin/cygfftw3_threads-3.dll
------------
591360 TOTAL

libfftw3-devel:
  2202   /usr/bin/fftw-wisdom-to-conf
 34816   /usr/bin/fftw-wisdom.exe
327332   /usr/lib/libfftw3.dll.a
   762   /usr/lib/libfftw3.la
 54536   /usr/lib/libfftw3_threads.dll.a
   815   /usr/lib/libfftw3_threads.la*
   209   /usr/lib/pkgconfig/fftw3.pc
  2143   /usr/include/fftw3.f
 10021   /usr/include/fftw3.h
 51019   /usr/share/info/fftw3.info-1
 51018   /usr/share/info/fftw3.info-2
 44463   /usr/share/info/fftw3.info-3
 43162   /usr/share/info/fftw3.info-4
 11149   /usr/share/info/fftw3.info-5
 1821    /usr/share/info/fftw3.info.gz
 1743    /usr/share/man/man1/fftw-wisdom-to-conf.1.gz
 2975    /usr/share/man/man1/fftw-wisdom.1.gz
------------
640186 TOTAL

fftw3-doc:
498555   /usr/share/doc/fftw3-3.0.1/fftw3.pdf
 30406   /usr/share/doc/fftw3-3.0.1/fftw-faq.ascii
         /usr/share/doc/fftw3-3.0.1/html/*
------------
919597 TOTAL

fftw3:
2121    /usr/share/doc/Cygwin/fftw3-3.0.1.README
173     /usr/share/doc/fftw3-3.0.1/AUTHORS
196103  /usr/share/doc/fftw3-3.0.1/ChangeLog
17992   /usr/share/doc/fftw3-3.0.1/COPYING
821     /usr/share/doc/fftw3-3.0.1/COPYRIGHT
9498    /usr/share/doc/fftw3-3.0.1/INSTALL
5346    /usr/share/doc/fftw3-3.0.1/NEWS
1253    /usr/share/doc/fftw3-3.0.1/README
1615    /usr/share/doc/fftw3-3.0.1/TODO
------------
234922 TOTAL


However, putting the DLLs in a separate, standalone package is not just about download size. It also helps with package and dependency management, if the API of the library changes in a backwards-incompatible manner.


Are these static libraries ? Otherwise your build
would depend on them
and you should package them for the distro.

Of course static. The only dependency needed was fftw3
so I adopted it.

Not to look a gift horse in the mouth, but cygwin binary software is under the GPL (or compatible open source license), because it is linked against the cygwin1.dll.


This means that, for ALL software linked into the binaries included in the cygwin distribution, we MUST also distribute the source.

Including static libraries.

The most convenient way to ensure this is for all dependent libraries to ALSO be members of the cygwin distribution.

So, we usually don't allow software in the distro that links against libaries that AREN'T part of the distro -- unless you take special care to distribute also those EXACT sources as part of your fftw3-src package.

I'll leave this to Corinna and cgf to decide, but it seems to me that either:

(1) you must rebuild your official package without reliance on Qhull, Hdf5, and qlpk/SuiteSparse, or
(2) include the EXACT Qhull/Hdf5/qlpk/SuiteSparse source code tarballs within the fftw3-src tarball
(3) you [or someone else] must ITP these packages


or else we must continue to go without an octave maintainer. However, that's just MHO, and I'm not in charge.

--
Chuck


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]