[racket-dev] Too many license files

2014-02-21 Thread Togan Muftuoglu

Hi,

As I am testing upcoming 6.0 release build process, one thing that strikes me
is the number of LICENCE.txt files, 166 of them. add the 3 for the copying 
COPYING-libscheme.txt, COPYING_LESSER.txt, COPYING.txt makes 169 in total. 

Is is really necessary to have the 166 copies of the same file ? Mind you it
is not the size but identical file being installed 166 times is the issue here


Please DO NOT put me in To or CC, just reply to the mailinglist/newsgroup 


-- 
Life is endless possibilities


_
  Racket Developers list:
  http://lists.racket-lang.org/dev


Re: [racket-dev] Testing for Racket v6.0

2014-02-18 Thread Togan Muftuoglu
 Ryan == Ryan Culpepper ryanc-1vnkwvzi4qavc3sceru...@public.gmane.org 
 writes:

Ryan We need volunteers for a final round of testing for Racket v6.0.
Ryan This round of testing will focus on the package system and changes
Ryan related to it.

Ryan We would like to test the release candidate on the following
Ryan configurations:

Ryan - Unix build from source, in-place install
Ryan - Unix build from source, Unix-style install

I want to test these as I am the maintainer for racket openSUSE packages

Togan

-- 
Life is endless possibilities


_
  Racket Developers list:
  http://lists.racket-lang.org/dev


Re: [racket-dev] package-system update

2013-07-22 Thread Togan Muftuoglu
 On Sun, 21 Jul 2013 10:32:10 -0600, Matthew Flatt 
 mflatt-sDh8Nw2yj/+vc3sceru...@public.gmane.org said:


Matthew When the gui (or gui-lib) package is installed, then a
Matthew gracket executable is added to bin. The starter executable
Matthew is used by `raco exe' to generate executables (that sometimes
Matthew refer back to gracket).

Ok there is progress to report, I can now build the core package alone.
However one thing is missing, the man pages are not installed by the make
install phase. For openSUSE (yet it should be the same for other distros)
every executable file should have a man page.

Thanks

Togan


-- 

  o.o.o o_o__o _o   ,_o  o_
 |   `|'   (|))'),'  ` |(   ' (,   ,( )| '
 ( )   [ ]   [ ]\   /  \/ \/ 
_
  Racket Developers list:
  http://lists.racket-lang.org/dev


Re: [racket-dev] package-system update

2013-07-21 Thread Togan Muftuoglu
 On Sat, 20 Jul 2013 10:36:09 -0600, Matthew Flatt 
 mflatt-sDh8Nw2yj/+vc3sceru...@public.gmane.org said:

Matthew At Sat, 20 Jul 2013 17:12:26 +0200, Togan Muftuoglu wrote:
  On Fri, 19 Jul 2013 17:43:42 -0600, Matthew Flatt 
 mflatt-sDh8Nw2yj/+vc3sceru5cw-xmd5yjdbdmrexy1tmh2...@public.gmane.org 
said:
 
Matthew The documentation directory and collection directory should be
Matthew configurable, now.
 
 Looks like but I still have problems with the build process as directory
 contents are not copied to the destinations.

Matthew The share, doc, and etc directories will be empty/missing
Matthew for a core build, so that's as expected. (But config vs. etc
Matthew was a bug that now should be fixed.)

Ok there is some progress but I am still not there. Let me briefly go over
the current problems, this could be due to I am building rpm packages, but
nevertheless:

1. Makefile in the main directory (not racket/src/Makefile.in) does not
understand rpmmacro %_smp_mflags which basically sets the CPU and JOBS 
automatically
setting CUPS=`/usr/bin/getconf _NPROCESSORS_ONLN`  get this done easier

That goes also true for %configure macro which sets most of the things
based on the build machine ie /usr/lib64 for x86_64 and /usr/lib for i586.
Not being able to the rpm macros makes packaging pain

So currently I am avoiding using this Makefile

2. using racket/src configure for x86_64 build and make produces this

 make[6]: Leaving directory 
`/home/abuild/rpmbuild/BUILD/racket-5.90.0.1/racket/src/gracket'
 cd ..; rm -f 
/home/abuild/rpmbuild/BUILDROOT/racket-5.90.0.1-22.1.x86_64/usr/lib64/racket/gracketcgc
 cd ..; rm -f 
/home/abuild/rpmbuild/BUILDROOT/racket-5.90.0.1-22.1.x86_64/usr/lib64/racket/gracket
 cd ..; echo 'MROPTIONS='  
/home/abuild/rpmbuild/BUILDROOT/racket-5.90.0.1-22.1.x86_64/usr/lib64/racket/buildinfo
 cd ..; echo MRLIBS=  
/home/abuild/rpmbuild/BUILDROOT/racket-5.90.0.1-22.1.x86_64/usr/lib64/racket/buildinfo
 cd ..; echo MRLDFLAGS=-pthread -L../racket  \
 
/home/abuild/rpmbuild/BUILDROOT/racket-5.90.0.1-22.1.x86_64/usr/lib64/racket/buildinfo
 cd ..; mkdir -p 
/home/abuild/rpmbuild/BUILDROOT/racket-5.90.0.1-22.1.x86_64/usr/lib64;
 make[5]: Leaving directory 
`/home/abuild/rpmbuild/BUILD/racket-5.90.0.1/racket/src/gracket'
 make install-wx_xt-3m
 make[5]: Entering directory 
`/home/abuild/rpmbuild/BUILD/racket-5.90.0.1/racket/src/gracket'
 make install-lib-3m-wx_xt
 make[6]: Entering directory 
`/home/abuild/rpmbuild/BUILD/racket-5.90.0.1/racket/src/gracket'
  make[6]: Leaving directory 
`/home/abuild/rpmbuild/BUILD/racket-5.90.0.1/racket/src/gracket'
 cd ..; /usr/bin/libtool --mode=install cp gracket/gracket3m \

/home/abuild/rpmbuild/BUILDROOT/racket-5.90.0.1-22.1.x86_64/usr/lib64/racket/gracket
 libtool: install: cp gracket/.libs/gracket3m \
  
/home/abuild/rpmbuild/BUILDROOT/racket-5.90.0.1-22.1.x86_64/usr/lib64/racket/gracket
 
^^  
 
That should not be the case gracket is not a library file it belongs to 
/usr/bin

gracket: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), \
   dynamically linked (uses shared libs), for GNU/Linux 2.6.32, 
 

There is also starter as /usr/lib64/racket/starter which has it come down
to play yet but that is also wrong location for an executable

starter: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically 
linked (uses shared libs), for GNU/Linux 2.6.32,



Thanks


-- 

 o.o.o o_o__o _o   ,_o  o_
|   `|'   (|))'),'  ` |(   ' (,   ,( )| '
( )   [ ]   [ ]\   /  \/ \/ 
_
  Racket Developers list:
  http://lists.racket-lang.org/dev


Re: [racket-dev] package-system update

2013-07-20 Thread Togan Muftuoglu
 On Fri, 19 Jul 2013 17:43:42 -0600, Matthew Flatt 
 mflatt-sDh8Nw2yj/+vc3sceru...@public.gmane.org said:

Matthew The documentation directory and collection directory should be
Matthew configurable, now.

Looks like but I still have problems with the build process as directory
contents are not copied to the destinations.


make install-common-middle
 make[3]: Entering directory 
`/home/abuild/rpmbuild/BUILD/racket-5.90.0.1/racket/src'
 make copytree-run
 make[4]: Entering directory 
`/home/abuild/rpmbuild/BUILD/racket-5.90.0.1/racket/src'
 racket/racketcgc  -u \
   ./../collects/setup/unixstyle-install.rkt \
   make-install-copytree ./.. \
   /home/abuild/rpmbuild/BUILDROOT/racket-5.90.0.1-0.x86_64/usr/bin \
   
/home/abuild/rpmbuild/BUILDROOT/racket-5.90.0.1-0.x86_64/usr/share/racket \
   
/home/abuild/rpmbuild/BUILDROOT/racket-5.90.0.1-0.x86_64/usr/share/doc/packages/racket
 \
   /home/abuild/rpmbuild/BUILDROOT/racket-5.90.0.1-0.x86_64/usr/lib64 
\
   
/home/abuild/rpmbuild/BUILDROOT/racket-5.90.0.1-0.x86_64/usr/include/racket \
   
/home/abuild/rpmbuild/BUILDROOT/racket-5.90.0.1-0.x86_64/usr/lib64/racket \
   
/home/abuild/rpmbuild/BUILDROOT/racket-5.90.0.1-0.x86_64/usr/share/racket \
   
/home/abuild/rpmbuild/BUILDROOT/racket-5.90.0.1-0.x86_64/etc/racket \
   
/home/abuild/rpmbuild/BUILDROOT/racket-5.90.0.1-0.x86_64/usr/share/man no
   
 Copying collects - 
/home/abuild/rpmbuild/BUILDROOT/racket-5.90.0.1-0.x86_64/usr/share/racket
 Copying share - 
/home/abuild/rpmbuild/BUILDROOT/racket-5.90.0.1-0.x86_64/usr/share/racket
   missing source path share, skipping...
 Copying doc - 
/home/abuild/rpmbuild/BUILDROOT/racket-5.90.0.1-0.x86_64/usr/share/doc/packages/racket
   missing source path doc, skipping...
 Copying config - 
/home/abuild/rpmbuild/BUILDROOT/racket-5.90.0.1-0.x86_64/etc/racket
   missing source path config, skipping...
 Rewriting configuration file at: 
/home/abuild/rpmbuild/BUILDROOT/racket-5.90.0.1-0.x86_64/etc/racket/config.rktd...


Matthew Besides starting from the git repository, you could also try out
Matthew the new source snapshot:

Matthew   http://www.cs.utah.edu/plt/snapshots/

Matthew The label on the Source snapshots really should say something
Matthew like kernel in source form, plus pre-built packages and
Matthew documentation. The Minimal Racket variant doesn't have any
Matthew packages, but it has the core collections pre-built, and
Matthew installing a package from the main distribution gets the package
Matthew in pre-built form from the snapshot site.

Sorry my understanding from a source package is just source nothing built or
pre-compiled interim product. So source = text files + icons. Yours don't
count as source for me.


Matthew I tried out the Racket | Source version, which took about one
Matthew minute to download (83 MB), about 3-4 minutes for `configure'
Matthew plus `make', and about 40 seconds for `make install'. After `make
Matthew install', DrRacket was ready to go, and all documentation (for
Matthew the main distribution) was available.

Yes but my source package is 16 MB with xz compression and circa 21 MB
when I package it as tgz. Surely they are smaller than your packages.

That also means in the future I would expect a source only package to be
available just like it is currently for the 5.3.5 release.




-- 

  o.o.o o_o__o _o   ,_o  o_
 |   `|'   (|))'),'  ` |(   ' (,   ,( )| '
 ( )   [ ]   [ ]\   /  \/ \/ 
_
  Racket Developers list:
  http://lists.racket-lang.org/dev


Re: [racket-dev] package-system update

2013-07-18 Thread Togan Muftuoglu
 On Wed, 17 Jul 2013 19:52:21 -0600, Matthew Flatt 
 mflatt-sDh8Nw2yj/+vc3sceru...@public.gmane.org said:

Matthew I think the new system is as ready as it's going to get without
Matthew further feedback, and my guess is that the problem hasn't been
Matthew fixed. Can you check with the latest?

When I check the current HEAD tag of the master this is what I get. Is
this what it should be if not can it be fixed so it reflects reality?

   ~/devel/git-sources/racket $ git describe --tags HEAD
   v5.0.1-12863-g3c0b799

   Togan

 

  o.o.o o_o__o _o   ,_o  o_
 |   `|'   (|))'),'  ` |(   ' (,   ,( )| '
 ( )   [ ]   [ ]\   /  \/ \/ 
_
  Racket Developers list:
  http://lists.racket-lang.org/dev


Re: [racket-dev] package-system update

2013-07-18 Thread Togan Muftuoglu
 On Wed, 17 Jul 2013 19:52:21 -0600, Matthew Flatt 
 mflatt-sDh8Nw2yj/+vc3sceru...@public.gmane.org said:

Matthew At Mon, 15 Jul 2013 23:17:08 +0200, Togan Muftuoglu wrote:
 Maybe I have missed it but is there, or will there be a documentation
 showing the dependency of packages. Like package B requires A C and
 recommends F.

Matthew We'll need documentation to say which package provides a given
Matthew library.

Matthew I don't anticipate documentation for a package that says which
Matthew other packages it depends on, because that seems like an
Matthew implementation detail of the package. Similarly, the
Matthew documentation for a library does not specify what other libraries
Matthew it imports --- only the bindings that the library provides.

 As a side note I have a patch that puts all generated documentation to
 /usr/share/doc/packages as the Makefile 5.3.5 (also the previous ones)
 do not honor the command line given parameters to the make command. I
 can send the patch (which is trivial anyway) but I guess the when the
 system will be ready the whole Makefile will be different.

Matthew I think the new system is as ready as it's going to get without
Matthew further feedback, and my guess is that the problem hasn't been
Matthew fixed. Can you check with the latest?

I have some issues compared to 5.3.5 where it was easy to fix. This is not the
case with the current git HEAD

1. configure and Makefile should allow docdir parameter given at as an arg

generated documentation (ie. html pdf) and other docs (README License etc)
should be located in for opensuse /usr/share/doc/packages/PACKAGE-NAME since
documention can be packaged separately and the end user has the option of not
installing it/them.

2. collects path should be allowed for another location ie.
/usr/lib/racked/collects for opensuse should be /usr/share/racket/collects

Finally currently build system  can't complete the install stage 

./racketcgc -cu ./collects-path.rkt \
/home/abuild/rpmbuild/BUILDROOT/racket-5.6.0-0.x86_64/usr/lib64/racket/starter
 \
/usr/lib64/racket/collects 

vector-ref: index is out of range
   index: 2
   valid range: [0, 1]
   vector: 
'#(/home/abuild/rpmbuild/BUILDROOT/racket-5.6.0-0.x86_64/usr/lib64/racket/starter
  /usr/lib64/racket/collects)

So at the moment I haven't been able to create a rpm package

the configure options are

%configure  --enable-shared \
--disable-static  --docdir=%_defaultdocdir/%name
--disable-strip --enable-places
--enable-lt=/usr/bin/libtool

make

make install DESTDIR=/BUILDROOT/%{name}-%{version}-%{release}.x86_64


Thanks

Togan
-- 

  o.o.o o_o__o _o   ,_o  o_
 |   `|'   (|))'),'  ` |(   ' (,   ,( )| '
 ( )   [ ]   [ ]\   /  \/ \/ 
_
  Racket Developers list:
  http://lists.racket-lang.org/dev


Re: [racket-dev] package-system update

2013-07-18 Thread Togan Muftuoglu
 On Thu, 18 Jul 2013 19:51:08 -0400, James McCoy 
 jamessan-8fiuurrzop0dnm+yrof...@public.gmane.org said:

James On Thu, Jul 18, 2013 at 05:07:38PM -0600, Matthew Flatt wrote:
 At Fri, 19 Jul 2013 00:48:10 +0200, Togan Muftuoglu wrote:
  1. configure and Makefile should allow docdir parameter given at as
 an arg  [...]
  
  2. collects path should be allowed for another location ie.  [...]
 
 I'll work on those.

James David or I probably should have brought up the second point
James earlier. We've been carrying a patch[0] in Debian to do that for a
James while now, although it's just changing one hard-coded path with
James another.

Well, I have a patch that is similar to debian also with the addition of
the doc location fix.

But the main issues are not these two 



-- 

  o.o.o o_o__o _o   ,_o  o_
 |   `|'   (|))'),'  ` |(   ' (,   ,( )| '
 ( )   [ ]   [ ]\   /  \/ \/ 
_
  Racket Developers list:
  http://lists.racket-lang.org/dev


Re: [racket-dev] package-system update

2013-07-18 Thread Togan Muftuoglu
 On Thu, 18 Jul 2013 17:07:38 -0600, Matthew Flatt 
 mflatt-sDh8Nw2yj/+vc3sceru...@public.gmane.org said:

Matthew At Fri, 19 Jul 2013 00:48:10 +0200, Togan Muftuoglu wrote:
 1. configure and Makefile should allow docdir parameter given at as an
 arg [...]
 
 2. collects path should be allowed for another location ie. [...]

Matthew I'll work on those.

Thanks

 Finally currently build system can't complete the install stage
 
 ./racketcgc -cu ./collects-path.rkt \
 
/home/abuild/rpmbuild/BUILDROOT/racket-5.6.0-0.x86_64/usr/lib64/racket/starter
 \ /usr/lib64/racket/collects

Matthew Is this from a generated Makefile, or it is from some other
Matthew script?

   That is from the generated Makefile. I use the racket/src/configure to
   generate the Makefile


Matthew The collects-path.rkt script now expects a second path, with is
Matthew the configuration directory path to embed in the executable.

Is it necessary the configuration directory path should be embed in the
executable. Why can't it be set at load time similar to Emacs init file
concept



-- 

  o.o.o o_o__o _o   ,_o  o_
 |   `|'   (|))'),'  ` |(   ' (,   ,( )| '
 ( )   [ ]   [ ]\   /  \/ \/ 
_
  Racket Developers list:
  http://lists.racket-lang.org/dev


Re: [racket-dev] package-system update

2013-07-15 Thread Togan Muftuoglu
 On Mon, 15 Jul 2013 09:34:00 -0600, Matthew Flatt mfl...@cs.utah.edu 
 said:

Matthew At Sun, 14 Jul 2013 15:59:28 +0200, tog...@opensuse.org wrote:
  On Sun, 14 Jul 2013 07:00:14 -0600, Matthew Flatt
 mfl...@cs.utah.edu said:
 
Matthew Longer term, I think that OS-level packages/ports should probably
Matthew reflect a minimal Racket installation, and then further Racket
Matthew packages would be installed via the Racket package system.
 
 Well, I would argue the other way around, as the whole package system 
would
 have been prepared for the distribution in mind, for example I build the
 package with shared-libraries, and avoding any static library, in 
addition to
 not to use bundled software ie. libffi.
 
 This makes my life as the maintainer of the package easier as any 
possible
 bug/security fix would be easier.

Matthew I agree that all the things you list should be part of any
Matthew OS-specific packaging of Racket. I think all of those details are
Matthew part of the core build, so they would be consistent with a
Matthew Minimal Racket package.

Maybe I have missed it but is there, or will there be a documentation showing
the dependency of packages. Like package B requires A C and recommends F.

Currently the opensuse packages have a racket package and separate packages
for drracket, webserver, slideshow.

As a side note I have a patch that puts all generated documentation to
/usr/share/doc/packages as the Makefile 5.3.5 (also the previous ones) do not
honor the command line given parameters to the make command. I can send the
patch (which is trivial anyway) but I guess the when the system will be ready
the whole Makefile will be different.




 Having said that the idea sounds more like the Emacs elpa system, and
 the user has the option to either download the distro provided packages
 or elpa versions. So in a effect racket goes the similar way.

Matthew Yes, that sounds right.

Ok then what is the current default install directory for the user
downloaded packages ? It should be user's home directory by default as it
is with elpa and its derivative melpa




_
  Racket Developers list:
  http://lists.racket-lang.org/dev