Fare, your asdf/uiop image-dumping machinery is great! with only a few minutes of trying i've already made an exe for the dwim.hu service that seems to just work. i'm very pleasantly surprised, because it gets rid of the entire hu.dwim.build complexity, and is now even platform independent... thank you! :) FTR, the change is here: http://dwim.hu/darcsweb/darcsweb.cgi?r=HEAD%20hu.dwim.home;a=commitdiff;h=20... it all seems to just work, but i have a hard time telling asdf where to put the resulting exe. the :build-pathname arg of defsystem errors with absolute paths (which sounds reasonable), but then it's merely the filename of the exe. my problem is that it gets saved into the fasl cache, which i cannot calculate from the shell script side of the build script to mv the file to its final place. is there some doc or test that i have missed? -- • attila lendvai • PGP: 963F 5D5F 45C7 DFCD 0A39 -- “You think you know when you can learn; are more sure when you can write; even more when you can teach... but certain when you can program.” — Alan Perlis
Dear Attila, On Sat, May 30, 2015 at 8:43 PM, Attila Lendvai <attila@lendvai.name> wrote:
Fare, your asdf/uiop image-dumping machinery is great! with only a few minutes of trying i've already made an exe for the dwim.hu service that seems to just work. i'm very pleasantly surprised, because it gets rid of the entire hu.dwim.build complexity, and is now even platform independent... thank you! :)
I'm quite glad you, of all people, like it!
FTR, the change is here: http://dwim.hu/darcsweb/darcsweb.cgi?r=HEAD%20hu.dwim.home;a=commitdiff;h=20...
it all seems to just work, but i have a hard time telling asdf where to put the resulting exe. the :build-pathname arg of defsystem errors with absolute paths (which sounds reasonable), but then it's merely the filename of the exe. my problem is that it gets saved into the fasl cache, which i cannot calculate from the shell script side of the build script to mv the file to its final place.
is there some doc or test that i have missed?
I don't think you've missed anything. If you want the exe to end up somewhere, you can: 1- copy the file (e.g. using uiop/stream:copy-file) from where program-op put it (which you can tell using output-files) to where you want it. Problem is, that won't do you much good on sbcl where save-lisp-and-die dies before you get to copy-file, unless you first use run-program to invoke the sbcl that will program-op. 2- Use (defmethod output-files ((o program-op) (s (eql (find-system "mysys")))) (values ... t)) so it will be exactly where you want it. 3- write ASDF4, that will solve these issues. —♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• http://fare.tunes.org Cubans bemoan the three failures of the revolution: breakfast, lunch and dinner
I don't think you've missed anything. If you want the exe to end up somewhere, you can: 1- copy the file (e.g. using uiop/stream:copy-file) from where program-op put it (which you can tell using output-files) to where you want it. Problem is, that won't do you much good on sbcl where save-lisp-and-die dies before you get to copy-file, unless you first use run-program to invoke the sbcl that will program-op. 2- Use (defmethod output-files ((o program-op) (s (eql (find-system "mysys")))) (values ... t)) so it will be exactly where you want it. 3- write ASDF4, that will solve these issues.
Oh, and apparently, cl-launch uses this method: :build-operation ,op ;; the value here will be program-op :build-pathname ,(when dump (ensure-absolute-pathname dump #'getcwd)) (operate op system) —♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• http://fare.tunes.org To surrender to ignorance and call it God has always been premature, and it remains premature today. — Isaac Asimov
I'm quite glad you, of all people, like it!
what? am i that critical usually? :)
2- Use (defmethod output-files ((o program-op) (s (eql (find-system "mysys")))) (values ... t)) so it will be exactly where you want it.
this one did the trick, thanks! hu.dwim.build is then pretty much obsoleted... great! -- • attila lendvai • PGP: 963F 5D5F 45C7 DFCD 0A39 -- “In the electronics industry, patents are of no value whatsoever in spurring research and development.” — vice-president of Intel Corporation, Business Week, 11 May 1981.
participants (2)
-
Attila Lendvai
-
Faré