Re: 6.4.2.20060411 under solaris

2006-04-19 Thread Christian Maeder

Simon Marlow wrote:

Christian Maeder wrote:
A further problem occured when installing my binary distribution. The 
installed file "bin/ghc" (and bin/ghci) did not have the mini-driver, 
but only the settings up to DEFAULT_TMPDIR.


Did you have BIN_DIST=1 in your build.mk from the beginning?


Yes.

The files in the binary distribution are:

lrwxrwxrwx   1 maeder   wimi  18 Apr 18 15:03 ghc -> 
ghc-6.4.2.20060411

-rwxr-xr-x   1 maeder   wimi 130 Apr 18 15:03 ghc-6.4.2.20060411

but when installing I get:

Creating a configured version of ghc-6.4.2.20060411 ..
cat: cannot open bin/sparc-sun-solaris2/ghc-6.4.2.20060411.sh
Done.

Should the binary dist have already .sh files?

C.
___
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users


Re: 6.4.2.20060411 under solaris

2006-04-19 Thread Simon Marlow

Christian Maeder wrote:

Simon Marlow wrote:

I'm rolling and uploading the 6.4.2 bits now, and this patch didn't 
make it in, sorry.  We can put together a patchset for building on 
Solaris and make it available separately.  Can you send me a working 
patch?  Did the DriverState patch I posted earlier work?



I've integrated no patch from you. Which post was it.


This one:

http://www.haskell.org//pipermail/glasgow-haskell-users/2006-April/010002.html

A further problem occured when installing my binary distribution. The 
installed file "bin/ghc" (and bin/ghci) did not have the mini-driver, 
but only the settings up to DEFAULT_TMPDIR.


Did you have BIN_DIST=1 in your build.mk from the beginning?


I'll rebuild ghc-6-4.2 if you put it out.


Ok, thanks.

Simon
___
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users


Re: 6.4.2.20060411 under solaris

2006-04-18 Thread Christian Maeder

Simon Marlow wrote:
I'm rolling and uploading the 6.4.2 bits now, and this patch didn't make 
it in, sorry.  We can put together a patchset for building on Solaris 
and make it available separately.  Can you send me a working patch?  Did 
the DriverState patch I posted earlier work?


I've integrated no patch from you. Which post was it.

A further problem occured when installing my binary distribution. The 
installed file "bin/ghc" (and bin/ghci) did not have the mini-driver, 
but only the settings up to DEFAULT_TMPDIR.


I'll rebuild ghc-6-4.2 if you put it out.

Cheers Christian
___
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users


Re: 6.4.2.20060411 under solaris

2006-04-18 Thread Simon Marlow

Christian Maeder wrote:

Simon Marlow wrote:


This bit of Makefile code is possibly going wrong for you:

   -include $(shell echo $(ProjectDirectory) | tr A-Z a-z)/mk/config.mk
   -include $(shell echo $(ProjectDirectory) | tr A-Z a-z)/mk/version.mk



you're right!


Try this instead:

  $ make Project=Ghc ProjectDirectory=ghc show VALUE=GhcBinDistDirs

from the top level.



This shows the values correctly now.


Maybe that tr command doesn't work on Solaris?



When I replace "tr A-Z a-z" with

  tr "[:upper:]" "[:lower:]"

(taken from "man tr') 'gmake binary-dist' works for me now, too.


I'm rolling and uploading the 6.4.2 bits now, and this patch didn't make 
it in, sorry.  We can put together a patchset for building on Solaris 
and make it available separately.  Can you send me a working patch?  Did 
the DriverState patch I posted earlier work?


Cheers,
Simon
___
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users


Re: 6.4.2.20060411 under solaris

2006-04-18 Thread Christian Maeder

Volker Stolz wrote:

venus [14:45:44]> echo foo | tr a-z A-Z
foo
venus [14:46:11]> echo foo | tr [a-z] [A-Z]
FOO

[..]

Maybe it's safe to switch to the bracketed version these days...
This also works fine on Linnix and FreeBSD.
Finding the correct 'tr' on Solaris is probably more tedious.


the bracketed version works for me, too. But maybe such a range is wrong 
for different locales anyway? ([A-Z] in file patterns on my linux 
machine also match lower case letters except "a").


I'm quite confused by the various ways of doing such a trivial 
transformation (using perl, sed, tr and what not.) and then still having 
it wrong for certain machines or environments.


Cheers Christian
___
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users


Re: 6.4.2.20060411 under solaris

2006-04-18 Thread Christian Maeder

Simon Marlow wrote:

This bit of Makefile code is possibly going wrong for you:

   -include $(shell echo $(ProjectDirectory) | tr A-Z a-z)/mk/config.mk
   -include $(shell echo $(ProjectDirectory) | tr A-Z a-z)/mk/version.mk


you're right!


Try this instead:

  $ make Project=Ghc ProjectDirectory=ghc show VALUE=GhcBinDistDirs

from the top level.


This shows the values correctly now.


Maybe that tr command doesn't work on Solaris?


When I replace "tr A-Z a-z" with

  tr "[:upper:]" "[:lower:]"

(taken from "man tr') 'gmake binary-dist' works for me now, too.

Thanks Christian
___
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users


Re: 6.4.2.20060411 under solaris

2006-04-18 Thread Volker Stolz
* Simon Marlow <[EMAIL PROTECTED]>:
> This bit of Makefile code is possibly going wrong for you:
>
> -include $(shell echo $(ProjectDirectory) | tr A-Z a-z)/mk/config.mk
> -include $(shell echo $(ProjectDirectory) | tr A-Z a-z)/mk/version.mk
>
> Try this instead:
>
>$ make Project=Ghc ProjectDirectory=ghc show VALUE=GhcBinDistDirs
>
> from the top level.  Maybe that tr command doesn't work on Solaris?

venus [14:45:44]> echo foo | tr a-z A-Z
foo
venus [14:46:11]> echo foo | tr [a-z] [A-Z]
FOO

>From the man page:

  /usr/xpg4/bin/tr
 c-c

  /usr/bin/tr
 [c-c] Represents the range of collating elements between the

Posix has this to say on the subject:

" On historical System V systems, a range expression requires enclosing
square-brackets, such as:

tr '[a-z]' '[A-Z]'

However, BSD-based systems did not require the brackets, and this
convention is used here to avoid breaking large numbers of BSD scripts:

tr a-z A-Z

The preceding System V script will continue to work because the brackets,
treated as regular characters, are translated to themselves. However,
 any System V script that relied on "a-z" representing the three characters
 'a' , '-' , and 'z' have to be rewritten as "az-" . "

Maybe it's safe to switch to the bracketed version these days...
This also works fine on Linnix and FreeBSD.
Finding the correct 'tr' on Solaris is probably more tedious.

Volker
-- 
http://www-i2.informatik.rwth-aachen.de/stolz/ *** PGP *** S/MIME
"All the excitement lies in pattern matching." (SPJ et al.)

___
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users


Re: 6.4.2.20060411 under solaris

2006-04-18 Thread Simon Marlow

Christian Maeder wrote:

Simon Marlow wrote:



GhcBinDistDirs is set by ghc/mk/config.mk, which is included by the 
top-level Makefile.



I see, there's another mk/config.mk in the subdirectory "ghc"


$ make show Project=Ghc VALUE=GhcBinDistDirs
GhcBinDistDirs="ghc libraries hslibs"



in this subdirectory I get the same result, but
'GhcBinDistDirs=""' one level up.


This bit of Makefile code is possibly going wrong for you:

   -include $(shell echo $(ProjectDirectory) | tr A-Z a-z)/mk/config.mk
   -include $(shell echo $(ProjectDirectory) | tr A-Z a-z)/mk/version.mk

Try this instead:

  $ make Project=Ghc ProjectDirectory=ghc show VALUE=GhcBinDistDirs

from the top level.  Maybe that tr command doesn't work on Solaris?

Cheers,
Simon
___
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users


Re: 6.4.2.20060411 under solaris

2006-04-13 Thread Christian Maeder

Simon Marlow wrote:


GhcBinDistDirs is set by ghc/mk/config.mk, which is included by the 
top-level Makefile.


I see, there's another mk/config.mk in the subdirectory "ghc"


$ make show Project=Ghc VALUE=GhcBinDistDirs
GhcBinDistDirs="ghc libraries hslibs"


in this subdirectory I get the same result, but
'GhcBinDistDirs=""' one level up.

Christian
___
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users


Re: 6.4.2.20060411 under solaris

2006-04-13 Thread Christian Maeder

Simon Marlow wrote:
GhcBinDistDirs is set by ghc/mk/config.mk, which is included by the 
top-level Makefile.


I've no such variable in ghc/mk/config.mk or ghc/mk/config.mk.in

C.
___
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users


Re: 6.4.2.20060411 under solaris

2006-04-13 Thread Simon Marlow

Christian Maeder wrote:

Christian Maeder wrote:


OSThreads.c:(.text+0x88): undefined reference to `sched_yield'
collect2: ld returned 1 exit status



I could fix this by adding "rt" to the extra-libraries of the rts 
package.conf file.


Now I have a stage2 compiler but "gmake binary-dist" does not work. I 
assume a couple of variables are not set up. What is going there? The 
Makefile has the line:


BIN_DIST_DIRS=$($(Project)BinDistDirs)

where I don't find "BinDistDirs"

Cheers Christian

--- ghc/rts/package.conf.inplaceThu Apr 13 15:49:49 2006
+++ ghc/rts/package.conf.inplace~   Wed Apr 12 19:44:55 2006
@@ -429,7 +429,6 @@

 extra-libraries:   "m"
  , "gmp"
-  , "rt"
  , "dl"


Ok, does this help instead (compile stage1 with this change):

*** DriverState.hs.~1.116.2.2.~ 2005-10-13 10:02:19.0 +0100
--- DriverState.hs  2006-04-13 15:32:02.0 +0100
***
*** 418,423 
--- 418,425 
  #if defined(freebsd_TARGET_OS)
  "-optc-pthread"
  , "-optl-pthread"
+ #elif defined(solaris_TARGET_OS)
+ "-optl-lrt"
  #endif
] ),



-bash-3.00$ gmake binary-dist Project=Ghc
rm -rf /home/maeder/haskell/solaris/ghc-6.4.2.20060411/-
rm -f /home/maeder/haskell/solaris/ghc-6.4.2.20060411/-.tar.gz
echo "BIN_DIST_DIRS = "
BIN_DIST_DIRS =
/bin/sh: syntax error at line 1: `;' unexpected
gmake: *** [binary-dist-pre] Error 2


Very strange.  It works here, because I built two binary dists last night.

GhcBinDistDirs is set by ghc/mk/config.mk, which is included by the 
top-level Makefile.


$ make show Project=Ghc VALUE=GhcBinDistDirs
GhcBinDistDirs="ghc libraries hslibs"

what does this do in your tree?

Cheers,
Simon
___
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users


Re: 6.4.2.20060411 under solaris

2006-04-13 Thread Christian Maeder

Christian Maeder wrote:

OSThreads.c:(.text+0x88): undefined reference to `sched_yield'
collect2: ld returned 1 exit status


I could fix this by adding "rt" to the extra-libraries of the rts 
package.conf file.


Now I have a stage2 compiler but "gmake binary-dist" does not work. I 
assume a couple of variables are not set up. What is going there? The 
Makefile has the line:


BIN_DIST_DIRS=$($(Project)BinDistDirs)

where I don't find "BinDistDirs"

Cheers Christian

--- ghc/rts/package.conf.inplaceThu Apr 13 15:49:49 2006
+++ ghc/rts/package.conf.inplace~   Wed Apr 12 19:44:55 2006
@@ -429,7 +429,6 @@

 extra-libraries:   "m"
  , "gmp"
-  , "rt"
  , "dl"


-bash-3.00$ gmake binary-dist Project=Ghc
rm -rf /home/maeder/haskell/solaris/ghc-6.4.2.20060411/-
rm -f /home/maeder/haskell/solaris/ghc-6.4.2.20060411/-.tar.gz
echo "BIN_DIST_DIRS = "
BIN_DIST_DIRS =
/bin/sh: syntax error at line 1: `;' unexpected
gmake: *** [binary-dist-pre] Error 2
___
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users


Re: 6.4.2.20060411 under solaris

2006-04-13 Thread Simon Marlow

Christian Maeder wrote:

Christian Maeder wrote:


RtsUtils.c:190: error: too few arguments to function 'ctime_r'



I could carry on after adding an argument ", 26"



now I get an error when linking the stage2 compiler. How should I fix this?

Cheers Christian

/home/maeder/haskell/solaris/ghc-6.4.2.20060411/ghc/rts/libHSrts_thr.a(OSThreads 


.thr_o): In function `yieldThread':
OSThreads.c:(.text+0x88): undefined reference to `sched_yield'
collect2: ld returned 1 exit status
>
gmake[2]: *** [stage2/ghc-6.4.2.20060411] Error 1
gmake[2]: Leaving directory 
`/home/maeder/haskell/solaris/ghc-6.4.2.20060411/ghc

/compiler'
gmake[1]: *** [stage2] Error 2
gmake[1]: Leaving directory 
`/home/maeder/haskell/solaris/ghc-6.4.2.20060411'

gmake: *** [bootstrap2] Error 2
(


I've been rather busy today with Haskell' and ICFP reviewing, so I won't 
be able to do the 6.4.2 release until next week (probably Tuesday, 
Monday is a holiday in the UK).


If you have fixes for these, and get them to me before Monday, I *might* 
be able to get them into the release.  It's a bit late though.


The sched_yield() thing looks like some extra library needs to be linked 
in under Solaris for the threaded RTS.


Cheers,
Simon
___
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users


Re: 6.4.2.20060411 under solaris

2006-04-13 Thread Christian Maeder

Christian Maeder wrote:

RtsUtils.c:190: error: too few arguments to function 'ctime_r'


I could carry on after adding an argument ", 26"


now I get an error when linking the stage2 compiler. How should I fix this?

Cheers Christian

/home/maeder/haskell/solaris/ghc-6.4.2.20060411/ghc/rts/libHSrts_thr.a(OSThreads
.thr_o): In function `yieldThread':
OSThreads.c:(.text+0x88): undefined reference to `sched_yield'
collect2: ld returned 1 exit status
>
gmake[2]: *** [stage2/ghc-6.4.2.20060411] Error 1
gmake[2]: Leaving directory 
`/home/maeder/haskell/solaris/ghc-6.4.2.20060411/ghc

/compiler'
gmake[1]: *** [stage2] Error 2
gmake[1]: Leaving directory 
`/home/maeder/haskell/solaris/ghc-6.4.2.20060411'

gmake: *** [bootstrap2] Error 2
(
___
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users


Re: 6.4.2.20060411 under solaris

2006-04-13 Thread Christian Maeder

Christian Maeder wrote:

RtsUtils.p_o
RtsUtils.c: In function 'time_str':
RtsUtils.c:190: error: too few arguments to function 'ctime_r'


I could carry on after adding an argument ", 26"

C.

-- RtsUtils.c  2006-04-13 09:09:49.778999000 +0200
+++ RtsUtils.c~ 2006-01-12 13:43:03.0 +0100
@@ -185,11 +185,11 @@
 static char nowstr[26];

 if (now == 0) {
time(&now);
 #if HAVE_CTIME_R
-   ctime_r(&now, nowstr, 26);
+   ctime_r(&now, nowstr);
 #else
strcpy(nowstr, ctime(&now));
 #endif
memmove(nowstr+16,nowstr+19,7);
nowstr[21] = '\0';  // removes the \n
___
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users