This is the mail archive of the cygwin-apps@cygwin.com 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: [ITP] gmp-4.1.2-1


Lapo Luchini wrote:

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

GMP ready and packaged.
Compiled with "-O2 -g -fomit-frame-pointer -march=i486 -mcpu=i686"
Shared library *only* (it *either* support static *xor* shared... I
opted for the latter)

Fine decision, IMO.


As usual the source package contains my cryptographic signature on patch
and script and original package signature on original package.

URL:  http://www.lapo.it/tmp/gmp-4.1.2-1-src.tar.bz2
MD5:  c0ccdcd17814365e3fb7b1424588836a
SHA1: d15895d4dc20c322f01979642f84c9dc6910cdd1
URL:  http://www.lapo.it/tmp/gmp-4.1.2-1.tar.bz2
MD5:  9504566eb9017ac89289686df59698fe
SHA1: d6de4e11b7f1a9df24237d34d2e68a9e2e0ca4c1

sdesc: "GMP is a free library for arbitrary precision arithmetic"
ldesc: "GMP is a free library for arbitrary precision arithmetic,
operating on signed integers, rational numbers, and floating point
numbers. There is no practical limit to the precision except the ones
implied by the available memory in the machine GMP runs on. GMP has a
rich set of functions, and the functions have a regular interface."
category: Math Libs
requires: cygwin


1. I'd prefer if the sdesc were a little more specific: it's a GPL library (e.g. free as in speech), not BSD or LGPL (free as in beer).



2. As far as the source packaging goes, it looks fine to me (built okay). You probably want to fix this:


configure: WARNING: If you wanted to set the --build type, don't use --host.
    If a cross compiler is detected then cross compile mode will be used.



3. I guess from cgf, this is okay:
-march=i486 -mcpu=i686
which translates to 'use 486 instruction set, but tune for optimum performance on 686'




4. It looks like the binary is compiled for cygwin-1.5.3+ -- or at least, the README implies that.



5. Didn't ssh at one time or other require gmp? Could cygwin's ssh distro benefit from this package -- or was that the non-free ssh?



6. Are you sure about the requires? I got a dependency on cygreadline5.dll -- for the demo programs which you don't ship...Might it be a good idea to ship some of those? (course, you have to install by hand -- and note rename of calc.exe)

   cd <builddir>/demos
   make factorize.exe isprime.exe pexpr.exe primes.exe qcn.exe
   /bin/sh ../libtool --mode=install install -s -m 755 \
     factorize ${instdir}${prefix}/bin/
   /bin/sh ../libtool --mode=install install -s -m 755 \
     isprime ${instdir}${prefix}/bin/
   /bin/sh ../libtool --mode=install install -s -m 755 \
     pexpr ${instdir}${prefix}/bin/
   /bin/sh ../libtool --mode=install install -s -m 755 \
     primes ${instdir}${prefix}/bin/
   /bin/sh ../libtool --mode=install install -s -m 755 \
     qcn ${instdir}${prefix}/bin/

   cd <builddir>/demos/calc
   make calc.exe
   /bin/sh ../../libtool --mode=install install -s -m 755 \
     calc /desktop/foo-test/gmp-4.1.2/.inst/usr/bin/gmp-calc



7. Also, the README doesn't mention the following build-requires:
  bison
  flex
  m4
  (gcc, binutils, of course)



8. Any thoughts on --enable-cxx ? --enable-mpfr ?



9. GMP uses very old-school libtool-1.4. I know it *works* -- but have you considered following the instructions in doc/configuration to update to the newer autotools ?



10. Finally, you might think about splitting this into multiple packages -- it's better to do so at first, than go thru the "split hell" later. Unless you're pretty sure there will never be a cyggmp-4.dll.

I'd suggest:
  libgmp3        - contains cyggmp-3.dll
  libgmp-devel   - contains import, libtool lib, includes
                   perhaps named gmp-devel, instead
  gmp            - everything else: docs, info, demo progs, etc



11. (I lied) /usr/info/dir is in the package. It shouldn't be. See next message.

--
Chuck




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