Re: [GHC] #1876: Complete shared library support

2009-09-23 Thread GHC
#1876: Complete shared library support
-+--
Reporter:  simonmar  |Owner:  duncan
Type:  task  |   Status:  closed
Priority:  high  |Milestone:  6.12.1
   Component:  Compiler  |  Version:  6.11  
Severity:  normal|   Resolution:  fixed 
Keywords:|   Difficulty:  Difficult (1 week)
Testcase:|   Os:  Unknown/Multiple  
Architecture:  Unknown/Multiple  |  
-+--
Changes (by simonmar):

  * status:  new = closed
  * resolution:  = fixed

Comment:

 Shared libs are working on Linux in 6.12.1.  We should open separate
 tickets for other tasks remaining to be done.

 A big thanks to everyone who has worked on getting shared library support
 into GHC over the years, particularly Wolfgang Thaller, Clemens Fruhwirth
 and Duncan Coutts.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/1876#comment:30
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #1876: Complete shared library support

2009-06-04 Thread GHC
#1876: Complete shared library support
-+--
Reporter:  simonmar  |Owner:  duncan
Type:  task  |   Status:  new   
Priority:  high  |Milestone:  6.12.1
   Component:  Compiler  |  Version:  6.11  
Severity:  normal|   Resolution:
Keywords:|   Difficulty:  Difficult (1 week)
Testcase:|   Os:  Unknown/Multiple  
Architecture:  Unknown/Multiple  |  
-+--
Changes (by Pete):

 * cc: 1...@234.cx (added)

Comment:

 Although we could use LD_LIBRARY_PATH to include the appropriate
 directory, that feels like a dirty hack: the standard Linux practice seems
 to be to put any shared libraries the linker needs to find where it will
 find them by default.

 Most packages I've seen install shared libraries in $PREFIX/lib.  If you
 accept the default $PREFIX, this means they will go in /usr/local/lib, and
 the linker is normally set so it will find them there.  If a package (deb,
 rpm or whatever) is being built, then $PREFIX will usually be set to /usr.
 In this case, the libraries will go in /usr/lib and again the linker will
 find them.

 If you decide to install the package in a private directory, the linker
 won't find the libraries.  In this case you can set the executable's rpath
 to the directory where the libraries are to be found.  The downside is
 that this makes the executables non-portable.  If Fred installs the
 libraries in ~fred/lib and Jim installs them in ~jim/lib, they won't be
 able to run each other's executables.  The rpath will be set correctly for
 the person who compiled the executable, but no one else.  At this point
 you have to set LD_LIBRARY_PATH and work round it that way.

 The Debian package of ALSA takes a different approach.  It installs its
 libraries in /usr/lib/alsa-lib/ and installs
 /etc/ld.so.conf.d/libasound2.conf which points to them.  (This file
 contains a single line, '/usr/lib/alsa-lib'.)  This approach makes sense,
 I imagine, if you are installing a lot of libraries and don't want to
 clutter up /usr/lib.

 I was just doing some experiments to make sure I'd got this right.  I
 created foo.c:

 #include stdio.h

 void blah() {
 printf(Hello World!\n);
 }

 and bar.c:

 extern void blah();

 main() {
 blah();
 }

 First of all I build foo.c into a shared library:

 $ gcc -fPIC -shared foo.c -o libfoo.so

 I can then link bar.c in two ways.  Here is the first option:

 $ gcc bar.c -o bar -L. -lfoo
 $ ./bar
 ./bar: error while loading shared libraries: libfoo.so: cannot open shared
 object file: No such file or directory
 $ LD_LIBRARY_PATH=. ./bar
 Hello World!

 Second option:

 $ gcc bar.c -o bar -Wl,--rpath=/home/pc -L. -lfoo
 $ ./bar
 Hello World!

 I hope this is helpful.  I'm not a functional programming expert, so I
 can't implement this myself.  On the other hand, I'm happy to help with
 any of these operating system issues.  My email is 1...@234.cx if you want
 anything from me.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/1876#comment:29
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #1876: Complete shared library support

2009-06-01 Thread GHC
#1876: Complete shared library support
-+--
Reporter:  simonmar  |Owner:  duncan
Type:  task  |   Status:  new   
Priority:  high  |Milestone:  6.12.1
   Component:  Compiler  |  Version:  6.11  
Severity:  normal|   Resolution:
Keywords:|   Difficulty:  Difficult (1 week)
Testcase:|   Os:  Unknown/Multiple  
Architecture:  Unknown/Multiple  |  
-+--
Changes (by simonmar):

  * owner:  = duncan

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/1876#comment:28
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #1876: Complete shared library support

2009-04-25 Thread GHC
#1876: Complete shared library support
-+--
Reporter:  simonmar  |Owner:
Type:  task  |   Status:  new   
Priority:  high  |Milestone:  6.12.1
   Component:  Compiler  |  Version:  6.11  
Severity:  normal|   Resolution:
Keywords:|   Difficulty:  Difficult (1 week)
Testcase:|   Os:  Unknown/Multiple  
Architecture:  Unknown/Multiple  |  
-+--
Changes (by juhpetersen):

  * version:  6.8.1 = 6.11

Comment:

 Replying to [comment:26 ttuegel]:
  1. ./configure --enable-shared  make successfully compiles a compiler!
 I nearly fell out of my chair in awe!

 Cool - that is indeed great news. Wow, wow! :-)

 I managed to make install ghc-6.11.20090421 with fedora
 ghc-6.10.2.x86_64 with a small patch I am attaching next: install needs to
 use dist-inplace/ghc-pkg not dist-install, which might be what ttuegel
 also ran into in the proceeding comment.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/1876#comment:27
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #1876: Complete shared library support

2009-04-14 Thread GHC
#1876: Complete shared library support
-+--
Reporter:  simonmar  |Owner:
Type:  task  |   Status:  new   
Priority:  high  |Milestone:  6.12.1
   Component:  Compiler  |  Version:  6.8.1 
Severity:  normal|   Resolution:
Keywords:|   Difficulty:  Difficult (1 week)
Testcase:|   Os:  Unknown/Multiple  
Architecture:  Unknown/Multiple  |  
-+--
Changes (by ttuegel):

 * cc: ttue...@gmail.com (added)

Comment:

 Since there hasn't been any chatter on this ticket in more than a month, I
 thought I would share some observations I made today testing shared
 library support on x86_64 Linux (I also have an x86 machine to test on
 later).  I apologize in advance if this information is redundant; keep in
 mind it comes from an only moderately well-informed outsider.

 1. ./configure --enable-shared  make successfully compiles a compiler!
 I nearly fell out of my chair in awe!

 2. make -jN does not work for N  1, but this may be a symptom of the
 build system in general, and not of shared library support.

 3. Because we need binaries bootstrapped as part of the compile process to
 install everything, make install fails because the operating system linker
 cannot find the shared libraries.

 I was able to use some LD_LIBRARY_PATH magic to include the relevant build
 directories and install anyway, but this only exposed the following:

 4. We put shared libraries for most packages into ${prefix}/lib but the
 rts and ffi shared-libraries go into ${prefix}/lib/ghc-6.11.20090409 where
 the dynamic linker won't find them by default.  Although we could use
 LD_LIBRARY_PATH to include the appropriate directory, that feels like a
 dirty hack: the standard Linux practice seems to be to put any shared
 libraries the linker needs to find where it will find them by default.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/1876#comment:26
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #1876: Complete shared library support

2009-04-11 Thread GHC
#1876: Complete shared library support
-+--
Reporter:  simonmar  |Owner:
Type:  task  |   Status:  new   
Priority:  high  |Milestone:  6.12.1
   Component:  Compiler  |  Version:  6.8.1 
Severity:  normal|   Resolution:
Keywords:|   Difficulty:  Difficult (1 week)
Testcase:|   Os:  Unknown/Multiple  
Architecture:  Unknown/Multiple  |  
-+--
Changes (by igloo):

  * milestone:  6.10 branch = 6.12.1

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/1876#comment:25
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #1876: Complete shared library support

2009-03-05 Thread GHC
#1876: Complete shared library support
-+--
Reporter:  simonmar  |Owner:
Type:  task  |   Status:  new   
Priority:  high  |Milestone:  6.10 branch   
   Component:  Compiler  |  Version:  6.8.1 
Severity:  normal|   Resolution:
Keywords:|   Difficulty:  Difficult (1 week)
Testcase:|   Os:  Unknown/Multiple  
Architecture:  Unknown/Multiple  |  
-+--
Comment (by simonmar):

 see also #3072

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/1876#comment:24
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #1876: Complete shared library support

2009-03-04 Thread GHC
#1876: Complete shared library support
-+--
Reporter:  simonmar  |Owner:
Type:  task  |   Status:  new   
Priority:  high  |Milestone:  6.10 branch   
   Component:  Compiler  |  Version:  6.8.1 
Severity:  normal|   Resolution:
Keywords:|   Difficulty:  Difficult (1 week)
Testcase:|   Os:  Unknown/Multiple  
Architecture:  Unknown/Multiple  |  
-+--
Comment (by juhpetersen):

 Replying to [comment:15 simonmar]:
  Grab the GHC sources, configure with `--enable-shared`, build as normal
 and report problems that you encounter.

 Ok, sorry for the delay.  I installed libffi-devel on Fedora rawhide and
 got quite far this time with stable:

 :
 :
 /home/petersen/ghc-6.10.1.20090303/utils/installPackage/install-
 inplace/bin/installPackage install
 '/home/petersen/ghc-6.10.1.20090303/utils/ghc-pkg/install-inplace/bin/ghc-
 pkg' 'XXX/package.conf'  \
 /home/petersen/ghc-6.10.1.20090303/ghc/stage2-inplace  \
 /home/petersen/ghc-6.10.1.20090303/ghc/stage2-inplace  \
'$prefix'
 \
'/home/petersen/ghc-6.10.1.20090303/inplace-
 datadir'   \
'$prefix/libexec'
 \
'$prefix/dynlib'
 \
'/home/petersen/ghc-6.10.1.20090303/inplace-
 datadir'   \
'$prefix/doc'
 \
'$prefix/html'
 \
'$prefix/haddock'
 \
--distpref dist-stage2
 \
--disable-executable-stripping
 \
--enable-shell-wrappers
 Installing executable(s) in
 /home/petersen/ghc-6.10.1.20090303/ghc/stage2-inplace
 make[3]: Leaving directory `/home/petersen/ghc-6.10.1.20090303/ghc'
 make[2]: Leaving directory `/home/petersen/ghc-6.10.1.20090303/compiler'
 make -C utils with-stage-2
 make[2]: Entering directory `/home/petersen/ghc-6.10.1.20090303/utils'
 make -C installPackage with-stage-2
 make[3]: Entering directory
 `/home/petersen/ghc-6.10.1.20090303/utils/installPackage'
 /home/petersen/ghc-6.10.1.20090303/libraries/cabal-bin /usr/bin/ghc
 /home/petersen/ghc-6.10.1.20090303/libraries/bootstrapping.conf 1.6.0.2
 configure --distpref dist-install \
--prefix=/NONEXISTENT --bindir=/NONEXISTENT
 --libdir=/NONEXISTENT --libexecdir=/NONEXISTENT --datadir=/NONEXISTENT
 --docdir=/NONEXISTENT --haddockdir=/NONEXISTENT --htmldir=/NONEXISTENT \
--with-
 compiler=/home/petersen/ghc-6.10.1.20090303/ghc/stage2-inplace/ghc --with-
 hc-pkg=/home/petersen/ghc-6.10.1.20090303/utils/ghc-pkg/install-
 inplace/bin/ghc-pkg   --package-db
 /home/petersen/ghc-6.10.1.20090303/stage3.package.conf   \
--libsubdir='$pkgid' --with-gcc=gcc --with-
 ld=/usr/bin/ld  --with-happy=/usr/bin/happy--configure-option
 ='--enable-shared' --configure-option=--with-cc=gcc --with-
 hsc2hs=/home/petersen/ghc-6.10.1.20090303/utils/hsc2hs/install-
 inplace/bin/hsc2hs   \
--constraint=Cabal == 1.6.0.2
 Configuring installPackage-1.0...
 cabal-bin: ghc version =6.4 is required but the version of
 /home/petersen/ghc-6.10.1.20090303/ghc/stage2-inplace/ghc could not be
 determined.
 make[3]: *** [with-stage-2] Error 1
 make[3]: Leaving directory
 `/home/petersen/ghc-6.10.1.20090303/utils/installPackage'
 make[2]: *** [with-stage-2.installPackage] Error 2
 make[2]: Leaving directory `/home/petersen/ghc-6.10.1.20090303/utils'
 make[1]: *** [stage2] Error 2
 make[1]: Leaving directory `/home/petersen/ghc-6.10.1.20090303'
 make: *** [bootstrap2] Error 2

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/1876#comment:23
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #1876: Complete shared library support

2009-02-24 Thread GHC
#1876: Complete shared library support
-+--
Reporter:  simonmar  |Owner:  clemens   
Type:  task  |   Status:  assigned  
Priority:  high  |Milestone:  6.10 branch   
   Component:  Compiler  |  Version:  6.8.1 
Severity:  normal|   Resolution:
Keywords:|   Difficulty:  Difficult (1 week)
Testcase:|   Os:  Unknown/Multiple  
Architecture:  Unknown/Multiple  |  
-+--
Comment (by simonmar):

 To my mind this is stalled not just due to lack of effort, but there's
 some design work to be done - mainly around how distributions, and how
 Cabal and cabal-install will work with shared libraries.  See my list of
 questions above
 ([http://hackage.haskell.org/trac/ghc/ticket/1876#comment:11]) for a
 start.

 The other thing that worries me is that without having support for fixed
 ABIs, we could have more problems with shared libraries, since when
 someone reinstalls a library they will break not only dependent packages,
 but also existing dynamically-linked binaries.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/1876#comment:20
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #1876: Complete shared library support

2009-02-23 Thread GHC
#1876: Complete shared library support
-+--
Reporter:  simonmar  |Owner:  clemens   
Type:  task  |   Status:  assigned  
Priority:  high  |Milestone:  6.10 branch   
   Component:  Compiler  |  Version:  6.8.1 
Severity:  normal|   Resolution:
Keywords:|   Difficulty:  Difficult (1 week)
Testcase:|   Os:  Unknown/Multiple  
Architecture:  Unknown/Multiple  |  
-+--
Comment (by clemens):

 We need a buildbot for regression testing. I asked a few times on #ghc
 without much response. Probably I wasn't persistant enough to chase after
 those responsible.

 I haven't look at most recent HEAD but frankly, I would be surprised if
 --enable-shared still works out of the box, where I left it a few months
 ago. Also I would be surpised if the number of failing test cases given
 above would have remained constant. Honestly, there is more exciting stuff
 around than hacking on shared libs.

 If someone wants to take the job, this one should feel free to reassign
 the bug to himself.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/1876#comment:18
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #1876: Complete shared library support

2009-02-23 Thread GHC
#1876: Complete shared library support
-+--
Reporter:  simonmar  |Owner:  clemens   
Type:  task  |   Status:  assigned  
Priority:  high  |Milestone:  6.10 branch   
   Component:  Compiler  |  Version:  6.8.1 
Severity:  normal|   Resolution:
Keywords:|   Difficulty:  Difficult (1 week)
Testcase:|   Os:  Unknown/Multiple  
Architecture:  Unknown/Multiple  |  
-+--
Comment (by igloo):

 We'll make it possible to build it in parallel with the non-shared GHC in
 the new build system, and then we won't need a dedicated buildbot for it.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/1876#comment:19
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #1876: Complete shared library support

2009-02-22 Thread GHC
#1876: Complete shared library support
-+--
Reporter:  simonmar  |Owner:  clemens   
Type:  task  |   Status:  assigned  
Priority:  high  |Milestone:  6.10 branch   
   Component:  Compiler  |  Version:  6.8.1 
Severity:  normal|   Resolution:
Keywords:|   Difficulty:  Difficult (1 week)
Testcase:|   Os:  Unknown/Multiple  
Architecture:  Unknown/Multiple  |  
-+--
Changes (by NeilMitchell):

 * cc: ndmitch...@gmail.com (added)

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/1876#comment:16
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #1876: Complete shared library support

2009-02-22 Thread GHC
#1876: Complete shared library support
-+--
Reporter:  simonmar  |Owner:  clemens   
Type:  task  |   Status:  assigned  
Priority:  high  |Milestone:  6.10 branch   
   Component:  Compiler  |  Version:  6.8.1 
Severity:  normal|   Resolution:
Keywords:|   Difficulty:  Difficult (1 week)
Testcase:|   Os:  Unknown/Multiple  
Architecture:  Unknown/Multiple  |  
-+--
Changes (by guest):

 * cc: bulat.zigans...@gmail.com (added)

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/1876#comment:17
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #1876: Complete shared library support

2008-12-01 Thread GHC
#1876: Complete shared library support
-+--
Reporter:  simonmar  |Owner:  clemens   
Type:  task  |   Status:  assigned  
Priority:  high  |Milestone:  6.10 branch   
   Component:  Compiler  |  Version:  6.8.1 
Severity:  normal|   Resolution:
Keywords:|   Difficulty:  Difficult (1 week)
Testcase:|   Os:  Unknown/Multiple  
Architecture:  Unknown/Multiple  |  
-+--
Comment (by simonmar):

 Grab the GHC sources, configure with `--enable-shared`, build as normal
 and report problems that you encounter.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/1876#comment:15
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #1876: Complete shared library support

2008-11-30 Thread GHC
#1876: Complete shared library support
-+--
Reporter:  simonmar  |Owner:  clemens   
Type:  task  |   Status:  assigned  
Priority:  high  |Milestone:  6.10 branch   
   Component:  Compiler  |  Version:  6.8.1 
Severity:  normal|   Resolution:
Keywords:|   Difficulty:  Difficult (1 week)
Testcase:|   Os:  Unknown/Multiple  
Architecture:  Unknown/Multiple  |  
-+--
Changes (by juhpetersen):

 * cc: [EMAIL PROTECTED] (added)

Comment:

 Is there anything one can do to help with testing this?

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/1876#comment:14
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #1876: Complete shared library support

2008-11-08 Thread GHC
#1876: Complete shared library support
--+-
 Reporter:  simonmar  |  Owner:  clemens   
 Type:  task  | Status:  assigned  
 Priority:  high  |  Milestone:  6.10 branch   
Component:  Compiler  |Version:  6.8.1 
 Severity:  normal| Resolution:
 Keywords:| Difficulty:  Difficult (1 week)
 Testcase:|   Architecture:  Unknown/Multiple  
   Os:  Unknown/Multiple  |  
--+-
Changes (by ingmar):

 * cc: [EMAIL PROTECTED] (added)

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/1876#comment:13
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #1876: Complete shared library support

2008-11-04 Thread GHC
#1876: Complete shared library support
--+-
 Reporter:  simonmar  |  Owner:  clemens   
 Type:  task  | Status:  assigned  
 Priority:  high  |  Milestone:  6.10 branch   
Component:  Compiler  |Version:  6.8.1 
 Severity:  normal| Resolution:
 Keywords:| Difficulty:  Difficult (1 week)
 Testcase:|   Architecture:  Unknown/Multiple  
   Os:  Unknown/Multiple  |  
--+-
Changes (by spl):

 * cc: [EMAIL PROTECTED] (added)

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/1876#comment:12
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #1876: Complete shared library support

2008-11-04 Thread GHC
#1876: Complete shared library support
--+-
 Reporter:  simonmar  |  Owner:  clemens   
 Type:  task  | Status:  assigned  
 Priority:  high  |  Milestone:  6.10 branch   
Component:  Compiler  |Version:  6.8.1 
 Severity:  normal| Resolution:
 Keywords:| Difficulty:  Difficult (1 week)
 Testcase:|   Architecture:  Unknown/Multiple  
   Os:  Unknown/Multiple  |  
--+-
Comment (by simonmar):

 Some issues to resolve before we can deploy shared libraries.  Some of
 these are probable just questions to be answered, but hint at
 documentation that we need to write.

  * Do GHC distributions contain both shared and static libraries?
  * Will Cabal build both shared and static libraries by default?
  * Can a module built with `-dynamic` link against static libraries, if
 the dynamic versions are not available?
  * If modules are compiled with `-fPIC` and/or `-dynamic`, can they then
 be linked statically?  On which platforms?  If not, what goes wrong if you
 try this?
  * On x86_64 we should have `-dynamic` turned on by default, for loading
 modules into GHCi, otherwise data references to shared libraries will only
 have 32-bit relocations and thus will break.
  * Using `-static` at compile-time on x86_64 should therefore come with a
 warning that the modules cannot be loaded into GHCi.  Can we detect this
 and report an error in GHCi?
  * What is the performance overhead of turning on `-dynamic` by default on
 x86_64?
  * What is the performance overhead (and code-size overhead) of shared
 libraries in general?

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/1876#comment:11
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #1876: Complete shared library support

2008-10-15 Thread GHC
#1876: Complete shared library support
--+-
 Reporter:  simonmar  |  Owner:  clemens   
 Type:  task  | Status:  assigned  
 Priority:  high  |  Milestone:  6.10 branch   
Component:  Compiler  |Version:  6.8.1 
 Severity:  normal| Resolution:
 Keywords:| Difficulty:  Difficult (1 week)
 Testcase:|   Architecture:  Unknown/Multiple  
   Os:  Unknown/Multiple  |  
--+-
Changes (by clemens):

  * status:  new = assigned
  * owner:  = clemens
 * cc: [EMAIL PROTECTED] (added)

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/1876#comment:10
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #1876: Complete shared library support

2008-10-14 Thread GHC
#1876: Complete shared library support
--+-
 Reporter:  simonmar  |  Owner:
 Type:  task  | Status:  new   
 Priority:  high  |  Milestone:  6.10 branch   
Component:  Compiler  |Version:  6.8.1 
 Severity:  normal| Resolution:
 Keywords:| Difficulty:  Difficult (1 week)
 Testcase:|   Architecture:  Unknown/Multiple  
   Os:  Unknown/Multiple  |  
--+-
Comment (by clemens):

 I fixed the following for Linux/x86_64 (probably also other archs) in
 today's HEAD
 ./configure --enable-shared; make should compile error free.
 It should give you all libraries as shared objects, including a stage2 GHC
 package.
 The GHC package should be linkable into a working ghc binary (including a
 wrapper) that also works in interactive mode. Running the testsuits gives
 a few isolated regressions in ghci and template haskell I still have to
 dig into.

 I won't go into details about the Windows status. At the moment, linking
 the RTS dies with unresolved RTS __imp__* symbols. Linking the RTS with
 its own import lib (libHSrts*.dll.a) should fix the problem, but I haven't
 got there yet.

 However, for libgmp on Windows, we need to apply the same trick as with
 libffi, namely change it into a Haskell package. Most of the hacking was
 already done for libffi, so the changes from libffi/Makefile could be
 worked into gmp/Makefile without much trouble, I think.

 In any case, I'd like to argue that we should give priority to Linux
 dynamic linking. With this I mean that we ship dynamic lib support even if
 it's just for this single architecture. This will help to build up a small
 user base that will hopefully report regressions as soon as they pop up.
 Also Linux is the most hassle free OS when it comes to dynamic library
 linking, so it is easier to establish that as base camp for further
 climbing.

 Except for libffi change, most of the changes are quite minimal. We could
 probably target 6.10.2 as milestone for merging this into stable.

 On Linux x86-64 dynamic at the moment:
 {{{
 Unexpected failures:
2014(normal)
T2386(normal)
T2597a(normal)
T2597b(normal)
TH_genEx(normal)
TH_spliceD1(normal)
TH_spliceDecl3(normal)
TH_spliceDecl4(normal)
TH_spliceE5(normal)
prog001(ghci)
prog002(ghci)
prog003(ghci)
 }}}

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/1876#comment:9
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #1876: Complete shared library support

2008-09-02 Thread GHC
#1876: Complete shared library support
--+-
 Reporter:  simonmar  |  Owner:
 Type:  task  | Status:  new   
 Priority:  high  |  Milestone:  6.10 branch   
Component:  Compiler  |Version:  6.8.1 
 Severity:  normal| Resolution:
 Keywords:| Difficulty:  Difficult (1 week)
 Testcase:|   Architecture:  Unknown   
   Os:  Unknown   |  
--+-
Changes (by ajd):

 * cc: [EMAIL PROTECTED] (added)

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/1876#comment:6
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #1876: Complete shared library support

2008-09-01 Thread GHC
#1876: Complete shared library support
--+-
 Reporter:  simonmar  |  Owner:
 Type:  task  | Status:  new   
 Priority:  high  |  Milestone:  6.10 branch   
Component:  Compiler  |Version:  6.8.1 
 Severity:  normal| Resolution:
 Keywords:| Difficulty:  Difficult (1 week)
 Testcase:|   Architecture:  Unknown   
   Os:  Unknown   |  
--+-
Changes (by simonmar):

  * milestone:  6.10.1 = 6.10 branch

Comment:

 I've made some progress on this, but it doesn't look like I'll have time
 to finish it for 6.10.1.  Since it doesn't involve API changes, we could
 possibly get it into a later 6.10 release, though.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/1876#comment:5
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #1876: Complete shared library support

2008-08-19 Thread GHC
#1876: Complete shared library support
--+-
 Reporter:  simonmar  |  Owner:
 Type:  task  | Status:  new   
 Priority:  high  |  Milestone:  6.10.1
Component:  Compiler  |Version:  6.8.1 
 Severity:  normal| Resolution:
 Keywords:| Difficulty:  Difficult (1 week)
 Testcase:|   Architecture:  Unknown   
   Os:  Unknown   |  
--+-
Changes (by mafo):

 * cc: mafo (added)

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/1876#comment:4
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #1876: Complete shared library support

2008-07-18 Thread GHC
#1876: Complete shared library support
--+-
 Reporter:  simonmar  |  Owner:
 Type:  task  | Status:  new   
 Priority:  high  |  Milestone:  6.10.1
Component:  Compiler  |Version:  6.8.1 
 Severity:  normal| Resolution:
 Keywords:| Difficulty:  Difficult (1 week)
 Testcase:|   Architecture:  Unknown   
   Os:  Unknown   |  
--+-
Changes (by batterseapower):

 * cc: [EMAIL PROTECTED] (added)

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/1876#comment:3
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #1876: Complete shared library support

2008-07-14 Thread GHC
#1876: Complete shared library support
--+-
 Reporter:  simonmar  |  Owner:
 Type:  task  | Status:  new   
 Priority:  high  |  Milestone:  6.10.1
Component:  Compiler  |Version:  6.8.1 
 Severity:  normal| Resolution:
 Keywords:| Difficulty:  Difficult (1 week)
 Testcase:|   Architecture:  Unknown   
   Os:  Unknown   |  
--+-
Changes (by simonmar):

  * difficulty:  Unknown = Difficult (1 week)
  * milestone:  6.10 branch = 6.10.1

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/1876#comment:2
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #1876: Complete shared library support

2008-06-10 Thread GHC
#1876: Complete shared library support
--+-
 Reporter:  simonmar  |  Owner: 
 Type:  task  | Status:  new
 Priority:  high  |  Milestone:  6.10 branch
Component:  Compiler  |Version:  6.8.1  
 Severity:  normal| Resolution: 
 Keywords:| Difficulty:  Unknown
 Testcase:|   Architecture:  Unknown
   Os:  Unknown   |  
--+-
Changes (by simonmar):

  * priority:  normal = high

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/1876#comment:1
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


[GHC] #1876: Complete shared library support

2007-11-12 Thread GHC
#1876: Complete shared library support
-+--
Reporter:  simonmar  |   Owner: 
Type:  task  |  Status:  new
Priority:  normal|   Milestone:  6.10 branch
   Component:  Compiler  | Version:  6.8.1  
Severity:  normal|Keywords: 
  Difficulty:  Unknown   |Testcase: 
Architecture:  Unknown   |  Os:  Unknown
-+--
 This ticket is a placeholder for the shared libraries work, which is
 mostly working but needs to be completed (binary distributions, issues
 with `-rpath` etc.).

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/1876
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs