[Hackage] #98: cabal assumes -x option for linking

Hackage trac at galois.com
Mon Mar 3 21:33:45 EST 2008


#98: cabal assumes -x option for linking
---------------------------------------+------------------------------------
  Reporter:  Christian.Maeder at dfki.de  |        Owner:  ijones         
      Type:  defect                    |       Status:  closed         
  Priority:  normal                    |    Milestone:  Cabal-1.2      
 Component:  Cabal library             |      Version:  1.2.0          
  Severity:  normal                    |   Resolution:  fixed          
  Keywords:                            |   Difficulty:  easy (<4 hours)
Ghcversion:  6.6                       |     Platform:  Other Unix     
---------------------------------------+------------------------------------
Comment (by duncan):

 Replying to [comment:2 guest]:

 > Furthermore the generated file libraries/base/GNUMakefile contained
 "`xargs -s 30000`" which is too big for Solaris (the maximal value is
 2048)

 I'd really like to get this increased. 2048 is ridiculously low for most
 platforms. We end up doing multiple ar and ld calls even for ordinary
 sized Haskell projects without even using split-objs. If people use split-
 objs we'll end up making 100's of ar/ld calls for larger libs.

 According to POSIX.1-2001 the minimum value for ARG_MAX is _POSIX_ARG_MAX
 which is 4096. So surely even older versions of Solaris must have
 supported at least 4096?

 I used the following C program to test on Solaris 9 and I discovered the
 value is 1048320.

 {{{
 #include <stdio.h>
 #include <unistd.h>
 #include <limits.h>
 int main () {
   printf("ARG_MAX == %d, sysconf(_SC_ARG_MAX) == %ld\n",
           ARG_MAX,       sysconf(_SC_ARG_MAX));
   return 0;
 }
 }}}

 On posix systems we could test dynamically using
 `System.Posix.Unistd.getSysVar ArgumentLimit` though it's a pain because
 we'd have to use cpp and add a conditional dependency on the unix package.

 Christian, what version of Solaris are you using and what does the above C
 program report for you?

-- 
Ticket URL: <http://hackage.haskell.org/trac/hackage/ticket/98#comment:15>
Hackage <http://haskell.org/cabal/>
Hackage: Cabal and related projects


More information about the cabal-devel mailing list