Re: [racket-users] symlink to raco changes its behavior?

2019-11-16 Thread Matthew Flatt
This is a holdover from `setup-plt` times. The `raco` executable treats
command line arguments without `-l` differently depending on whether
the name of the executable is `raco` (which was a may of improving
things with `raco` while maintaining compatibility for `setup-plt`).
So, it's expected at some level, but should be improved.

At 15 Nov 2019 19:37:52 -0500, "'John Clements' via users-redirect" wrote:
> I’ve been testing the release version of racket for a few weeks now, and I 
> notice a strange difference between using the “raco” binary that’s part of 
> the 
> distribution and using a symlink to that binary. Specifically, calling raco 
> setup always requires an explicit ‘-l’ when I use the symlink. When I provide 
> the path to raco explicitly, it works fine without the -l. Attached see a 
> transcript that shows the problem. I just want to make sure that … this is 
> expected behavior?
> 
> John
> 
> 
> ```
> # here’s the symlink:
> hardy:/tmp/moss clements> ls -ld ~/bin/nuraco
> lrwxr-xr-x  1 clements  staff  40 Oct 15 11:30 /Users/clements/bin/nuraco -> 
> /Applications/Racket v7.4.0.902/bin/raco
> # calling it with an explicit path works fine:
> hardy:/tmp/moss clements> /Applications/Racket\ v7.4.0.902/bin/raco setup 
> csse-scheduling
> raco setup: version: 7.4.0.902
> raco setup: platform: x86_64-macosx [3m]
> raco setup: target machine: racket
> raco setup: installation name: 7.4.0.902
> raco setup: variants: 3m
> raco setup: main collects: /Applications/Racket v7.4.0.902/collects
> raco setup: collects paths: 
> raco setup:   /Users/clements/Library/Racket/7.4.0.902/collects
> raco setup:   /Applications/Racket v7.4.0.902/collects
> raco setup: main pkgs: /Applications/Racket v7.4.0.902/share/pkgs
> raco setup: pkgs paths: 
> raco setup:   /Applications/Racket v7.4.0.902/share/pkgs
> raco setup:   /Users/clements/Library/Racket/7.4.0.902/pkgs
> raco setup: links files: 
> raco setup:   /Applications/Racket v7.4.0.902/share/links.rktd
> raco setup:   /Users/clements/Library/Racket/7.4.0.902/links.rktd
> raco setup: main docs: /Applications/Racket v7.4.0.902/doc
> raco setup: --- updating info-domain tables ---[16:31:56]
> raco setup: --- pre-installing collections --- [16:31:56]
> raco setup: --- installing foreign libraries ---   [16:31:56]
> raco setup: --- installing shared files ---[16:31:56]
> raco setup: --- compiling collections ---  [16:31:56]
> raco setup: --- parallel build using 8 jobs ---[16:31:56]
> raco setup: 7 making: /csse-scheduling/csse-scheduling (CSSE Scheduling 
> Support)
> raco setup: 7 making: /csse-scheduling/csse-scheduling/progress
> raco setup: --- creating launchers --- [16:31:57]
> raco setup: --- installing man pages ---   [16:31:57]
> raco setup: --- building documentation --- [16:31:57]
> raco setup: 2 skipping: /distro-build-doc/distro-build.scrbl
> raco setup: rendering: 
> /csse-scheduling/csse-scheduling/csse-scheduling.scrbl
> WARNING: collected information for key multiple times: '(exporting-libraries 
> #f); values: '(canonicalize) '(types)
> WARNING: collected information for key multiple times: '(exporting-packages 
> #f); values: '() '()
> WARNING: collected information for key multiple times: '(exporting-libraries 
> #f); values: '(types) '(qtr-math)
> WARNING: collected information for key multiple times: '(exporting-packages 
> #f); values: '() '()
> raco setup: --- installing collections --- [16:32:02]
> raco setup: --- post-installing collections ---[16:32:02]
> # calling it using the symlink doesn’t work:
> hardy:/tmp/moss clements> nuraco setup csse-scheduling
> open-input-file: cannot open input file
>   path: /tmp/moss/csse-scheduling
>   system error: No such file or directory; errno=2
>   context...:
>/Applications/Racket v7.4.0.902/collects/setup/unpack.rkt:262:2: unpack7
>/Applications/Racket v7.4.0.902/collects/setup/setup-core.rkt:287:13: 
> for-loop
>/Applications/Racket v7.4.0.902/collects/setup/setup-core.rkt:72:0: 
> setup-core
>"/Applications/Racket v7.4.0.902/collects/setup/main.rkt": [running body]
>temp37_0
>for-loop
>run-module-instance!125
>"/Applications/Racket v7.4.0.902/collects/raco/main.rkt": [running body]
>temp37_0
>for-loop
>run-module-instance!125
>perform-require!78
> hardy:/tmp/moss clements> 
> ```
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "Racket Users" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to racket-users+unsubscr...@googlegroups.com.
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/racket-users/81830d2b-c734-481e-8caa-657c7f89
> eac9%40mtasv.net.

-- 
You received this message because you 

Re: [racket-users] Problem building racket in-place

2019-11-16 Thread Matthew Flatt
At Sat, 16 Nov 2019 18:32:00 +, Reuben Thomas wrote:
> On Sat, 16 Nov 2019 at 15:06, Matthew Flatt  wrote:
> 
> >
> > The checked-in `configure` scripts are generated by "make-configure" in
> > "racket/src/ac", and that script doesn't refer to "start/configure.ac".
> >
> 
> Thanks for the confirmation. What about start/install2.ac?

Also should be removed. That one was probably an intermediate file from
conversion that I missed in cleanup.

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/racket-users/5dd0ea2a.1c69fb81.b654f.b6b4SMTPIN_ADDED_MISSING%40gmr-mx.google.com.


Re: [racket-users] Problem building racket in-place

2019-11-16 Thread 'Reuben Thomas' via Racket Users
On Sat, 16 Nov 2019 at 15:06, Matthew Flatt  wrote:

>
> The checked-in `configure` scripts are generated by "make-configure" in
> "racket/src/ac", and that script doesn't refer to "start/configure.ac".
>

Thanks for the confirmation. What about start/install2.ac?

-- 
https://rrt.sc3d.org

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/racket-users/CAOnWdohTPAnLLV%2Bj1wurytT-WW3px%2BWVQzWoCTsBEzfPEoPyBw%40mail.gmail.com.


Re: [racket-users] Problem building racket in-place

2019-11-16 Thread Matthew Flatt
At Fri, 15 Nov 2019 21:33:17 +, "'Reuben Thomas' via Racket Users" wrote:
> I've looked into it and I can't work out what start/*.ac are used. 

Ah, right again. That explains why I didn't update "start/configure.ac"
to use "path.m4". It's because "start/configure.ac" isn't supposed to
exist. I'm pretty sure we should just delete it.

> However, I see that some generated files like various "configure"s are
> checked in, so maybe I'm overlooking something, a buried generated
> reference to those files? (But I can't find install2 mentioned anywhere!)

The checked-in `configure` scripts are generated by "make-configure" in
"racket/src/ac", and that script doesn't refer to "start/configure.ac".

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/racket-users/5dd01070.1c69fb81.62223.1645SMTPIN_ADDED_MISSING%40gmr-mx.google.com.


Re: [racket-users] Re: raco distribute and runtime paths, conditioned on whether a package was installed at compile time

2019-11-16 Thread Bogdan Popa


James Platt writes:

> Would this now be the preferred method to include a copy of the SQLite
> library. required by the DB module, to your distribution?  The
> software I am working on requires a newer version of SQLite than is
> included in at least some of the operating systems we want to support
> and it's too much to expect end users to install it themselves.

I released two packages[1][2] that distribute more recent versions of
SQLite3 to Linux and macOS a couple of months ago.  I build the shared
libraries in CI (using GitHub Actions) then add the .so and .dylib files
to each package, using #lang info's `copy-foreign-libs'[3] to tell
Racket that it should add the libs to a folder where the ffi library
will know to look them up.  The source code is here[4].  I'd be happy to
add more architectures and OSs if you need them.

Here's an example[5] where I use the linux package to get the tests for
`deta' passing on the package build server.

I hope that helps!

[1]: https://pkgd.racket-lang.org/pkgn/package/libsqlite3-x86_64-linux
[2]: https://pkgd.racket-lang.org/pkgn/package/libsqlite3-x86_64-macosx
[3]: 
https://docs.racket-lang.org/raco/setup-info.html?q=copy-foreign-libs#%28idx._%28gentag._22._%28lib._scribblings%2Fraco%2Fraco..scrbl%29%29%29
[4]: https://github.com/Bogdanp/racket-libsqlite3
[5]: https://github.com/Bogdanp/deta/blob/master/deta-test/info.rkt#L5

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/racket-users/m2mucwi4tq.fsf%40192.168.0.139.