[MacPorts] #15198: mzscheme-371 - incorrect collects-dir
#15198: mzscheme-371 - incorrect collects-dir ---------------------------------------+------------------------------------ Reporter: eric.m.kidd@dartmouth.edu | Owner: macports-tickets@lists.macosforge.org Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.6.0 Keywords: | ---------------------------------------+------------------------------------ mzscheme 371 is has an incorrect value for collects-dir, which breaks the compilation manager. See the [http://list.cs.brown.edu/pipermail/plt- scheme/2008-May/024539.html discussion thread] for details of why the current behavior is wrong, and why it causes a problem. To reproduce this bug, save the following script as collects-test.ss: {{{ ;; Print out two paths built into our executable. (printf "exec-file: ~s~ncollects-dir: ~s~n" (find-system-path 'exec-file) (find-system-path 'collects-dir)) ;; Find the default collects-dir built into our executable. This ;; path may be relative to exec-file's parent directory. This will ;; let us know where PLT thinks it should be finding its ;; collections. (define (default-collects-dir) (call-with-values (lambda () (split-path (find-system-path 'exec-file))) (lambda (base name must-be-dir?) (let [[collects (find-system-path 'collects-dir)]] (if (eq? base 'relative) (path->complete-path collects) (path->complete-path collects base)))))) ;; Does this work? (if (file-exists? (build-path (default-collects-dir) "mzlib" "list.ss")) (printf "OK: This copy of mzscheme is set up correctly.~n") (printf "BROKEN: This copy of mzscheme has a bad collects-dir.~n")) }}} Then run it from the command line: {{{ $ mzscheme -r collects-test.ss exec-file: #<path:mzscheme> collects-dir: #<path:../collects> BROKEN: This copy of mzscheme has a bad collects-dir. }}} Desired behavior: This script should print "OK". Thank you to the MacPorts maintainers for such a useful port system! (Yes, I'm aware that MacPorts mzscheme is currently unmaintained. This bug is more a reminder to a future maintainer than anything else.) -- Ticket URL: <http://trac.macosforge.org/projects/macports/ticket/15198> MacPorts </projects/macports> Ports system for Mac OS
#15198: mzscheme-371 - incorrect collects-dir ----------------------------------------+----------------------------------- Reporter: eric.m.kidd@dartmouth.edu | Owner: macports-tickets@lists.macosforge.org Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.6.0 Resolution: | Keywords: ----------------------------------------+----------------------------------- Comment (by eric.m.kidd@dartmouth.edu): Note that this implementation of (default-collects-dir) should probably try to resolve symbolic links in exec-file. See the current Subversion documentation for (find-library-collection- paths), which will specify the exact algorithm to use for (default- collects-dir). -- Ticket URL: <http://trac.macosforge.org/projects/macports/ticket/15198#comment:1> MacPorts </projects/macports> Ports system for Mac OS
#15198: mzscheme-371 - incorrect collects-dir ----------------------------------------+----------------------------------- Reporter: eric.m.kidd@dartmouth.edu | Owner: macports-tickets@lists.macosforge.org Type: defect | Status: new Priority: Normal | Milestone: Port Bugs Component: ports | Version: 1.6.0 Resolution: | Keywords: ----------------------------------------+----------------------------------- Changes (by jmr@macports.org): * milestone: => Port Bugs -- Ticket URL: <http://trac.macosforge.org/projects/macports/ticket/15198#comment:2> MacPorts </projects/macports> Ports system for Mac OS
participants (1)
-
MacPorts