Re: [asdf-devel] ASDF 2.26 in Quicklisp
On 11/28/12 Nov 28 -10:48 AM, Zach Beane wrote: > Robert Goldman writes: > >> On 11/28/12 Nov 28 -10:40 AM, Robert Goldman wrote: >>> On 11/28/12 Nov 28 -10:37 AM, Didier Verna wrote: Robert Goldman wrote: > It would be nice if texinfo offered links to more specific locations > than nodes, but it sounds like that's not available. It is. You can do that manually with anchors. Cf. @anchor{} and @ref{} (@xref, @pxref etc.).. >>> >>> Great! Thanks! That seems like a much lower-cost solution than trying >>> to redo all the node structure. >>> >> >> Zach -- >> >> If you have particular links that make you unhappy, even if you can just >> name them by function, not by link-name, that would make it more likely >> I would fix them... > > If you visit http://l1sp.org/asdf/manual and click on the TOC entry > "5.3.9 Serial dependencies", you are brought to "5 Defining systems with > defsystem". It's not all that close to the actual desired target. > > The same is true for all other subsection links in the TOC. > > Zach > Thanks. If I get some downtime, I'll try to either split these subsections into nodes (if anyone has an emacs command that will do that automagically, please LMK), or add anchors. cheers, r ___ asdf-devel mailing list asdf-devel@common-lisp.net http://lists.common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel
Re: [asdf-devel] ASDF-bundle and cross-compiling with ECL
On Wed, Nov 28, 2012 at 9:06 AM, Sylvain Ageneau wrote: > Hello, > I'm looking for input/suggestions about something I've been working on that > is related to asdf-bundle. > > I'm trying to come up with a good solution to do cross-compiling of ASDF > packages using ECL. For example I want to be able to create a bundle for a > system that looks like this: > > (asdf:defsystem openglsample > :components > ((:file "package") >#+cross >(:file "shader-vao" :depends-on ("package"))) > :depends-on (#+iphone iphone > #+android android >#+android cl+j >#+(or android iphone) cl-opengl)) > > Using this system definition, I'd like to be able to create monolithic > bundles libopenglsample_iphone.a and libopenglsample_android.a with the > constraint that the android version will include the "android" and cl+j > systems and the iPhone version will contain the "iphone" system. > > I tried adding new operations to asdf "cross-compile-op" "cross-lib-op" see > here: > https://github.com/ageneau/ecl-android/tree/master/lisp-packages/asdf-cross. > This mostly works but the handling of the different *features* for each > target is a bit of a mess since the host and the target can have different > system definitions. > > Also because of side-effects, cross-compiling of a particular source file > might depend on the host having loaded some dependencies first except the > host will load this dependency with *features* that might be different than > the target. > For cross-compiling using ASDF, you might want to have separate features #+target-iphone and #+target-android separate from the host features. > I'm wondering would this be better suited for xcvb? In particular can xcvb > cross-compile a system without the host doing the cross-compilation having > to load the system definition for the system it is compiling? > XCVB indeed completely distinguishes features on the host and target system, and allows you to define or undefine features with -D and -U. I don't remember writing a bundling output for ECL on XCVB, but that could most definitely be done. Contact me personally or post on the xcvb-devel list if you're interested. —♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• http://fare.tunes.org Life is like an onion: you peel off layer after layer, then you find there is nothing in it. ___ asdf-devel mailing list asdf-devel@common-lisp.net http://lists.common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel
Re: [asdf-devel] ASDF 2.26 in Quicklisp
Robert Goldman writes: > On 11/28/12 Nov 28 -10:40 AM, Robert Goldman wrote: >> On 11/28/12 Nov 28 -10:37 AM, Didier Verna wrote: >>> Robert Goldman wrote: >>> It would be nice if texinfo offered links to more specific locations than nodes, but it sounds like that's not available. >>> >>> It is. You can do that manually with anchors. Cf. @anchor{} and >>> @ref{} (@xref, @pxref etc.).. >>> >> >> Great! Thanks! That seems like a much lower-cost solution than trying >> to redo all the node structure. >> > > Zach -- > > If you have particular links that make you unhappy, even if you can just > name them by function, not by link-name, that would make it more likely > I would fix them... If you visit http://l1sp.org/asdf/manual and click on the TOC entry "5.3.9 Serial dependencies", you are brought to "5 Defining systems with defsystem". It's not all that close to the actual desired target. The same is true for all other subsection links in the TOC. Zach ___ asdf-devel mailing list asdf-devel@common-lisp.net http://lists.common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel
Re: [asdf-devel] ASDF 2.26 in Quicklisp
On 11/28/12 Nov 28 -10:40 AM, Robert Goldman wrote: > On 11/28/12 Nov 28 -10:37 AM, Didier Verna wrote: >> Robert Goldman wrote: >> >>> It would be nice if texinfo offered links to more specific locations >>> than nodes, but it sounds like that's not available. >> >> It is. You can do that manually with anchors. Cf. @anchor{} and >> @ref{} (@xref, @pxref etc.).. >> > > Great! Thanks! That seems like a much lower-cost solution than trying > to redo all the node structure. > Zach -- If you have particular links that make you unhappy, even if you can just name them by function, not by link-name, that would make it more likely I would fix them... cheers, r ___ asdf-devel mailing list asdf-devel@common-lisp.net http://lists.common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel
Re: [asdf-devel] ASDF 2.26 in Quicklisp
On 11/28/12 Nov 28 -10:37 AM, Didier Verna wrote: > Robert Goldman wrote: > >> It would be nice if texinfo offered links to more specific locations >> than nodes, but it sounds like that's not available. > > It is. You can do that manually with anchors. Cf. @anchor{} and > @ref{} (@xref, @pxref etc.).. > Great! Thanks! That seems like a much lower-cost solution than trying to redo all the node structure. Best, r ___ asdf-devel mailing list asdf-devel@common-lisp.net http://lists.common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel
Re: [asdf-devel] ASDF 2.26 in Quicklisp
Robert Goldman wrote: > It would be nice if texinfo offered links to more specific locations > than nodes, but it sounds like that's not available. It is. You can do that manually with anchors. Cf. @anchor{} and @ref{} (@xref, @pxref etc.).. -- Resistance is futile. You will be jazzimilated. Scientific site: http://www.lrde.epita.fr/~didier Music (Jazz) site: http://www.didierverna.com ___ asdf-devel mailing list asdf-devel@common-lisp.net http://lists.common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel
Re: [asdf-devel] ASDF 2.26 in Quicklisp
On 11/28/12 Nov 28 -9:02 AM, Didier Verna wrote: > rpgold...@sift.info wrote: > >> As far as I can tell, this is a misfeature of texinfo. The links only >> work to the node level (at least in the info browser). So we would >> need to reactor the document into smaller nodes to fix that. > > That's not really a misfeature. That fact is that Texinfo uses nodes > as its primary sectionning mechanism. You need to think in terms of > node first when you write Texinfo. Every sectionning command that you > use should be associated with a node, and every node that has > sub-nodes should have a menu. It seems that you only have nodes for > chapters, which explains the shaky TOC. This is a fair criticism, however Faré and I inherited the chapter-based organization, and refactoring texinfo seems like a lot of work. It would be worth redesigning the information flow at the same time if we were to restructure. Notably the discussion of the object model is incomplete and somewhat messy. There isn't a clear description of protocols for extending the object model. It would be very nice to have that. Cheers, r > >> Unfortunately, in addition to requiring some work, that would also >> give us a document with very small pages, that would be a nuisance >> when attempting to read in chunks (as opposed to jumping to a very >> specific item). > > That is correct, although I don't find that this is such a nuisance, > since you have all the hyperlinks you want. Otherwise, what you can do > is generate a single web page for the whole doc (Cf. --no-split). It's a nuisance if you read the info pages in emacs. You get choppy little bites instead of any kind of sensible flow. E.g., to be able to jump to a single function's documentation specifically, you have to sacrifice the ability to have a screen that shows three related functions together. Unless I am missing something (I hope I am). This can be somewhat ameliorated by making a single-page HTML document, or using PDF, but even then the screens seem impoverished. It would be nice if texinfo offered links to more specific locations than nodes, but it sounds like that's not available. Best, r ___ asdf-devel mailing list asdf-devel@common-lisp.net http://lists.common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel
Re: [asdf-devel] ASDF 2.26 in Quicklisp
Robert Goldman writes: > FWIW, I never use the HTML version. I always use info inside emacs (not > the standalone version). If I want to read end-to-end, I use PDF, which > has links without the annoying choppiness of a multi-page HTML document. > > If you use emacs as your primary development environment, info is nicely > integrated. > > One of the advantages of Texinfo is that it provides HTML, PDF and info, > for different customers. You're the exception. Most people will reference http://common-lisp.net/project/asdf/asdf.html - a single non-choppy HTML page with unfortunately coarse TOC-to-document links. Zach ___ asdf-devel mailing list asdf-devel@common-lisp.net http://lists.common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel
Re: [asdf-devel] ASDF 2.26 in Quicklisp
On 11/28/12 Nov 28 -8:39 AM, Zach Beane wrote: > rpgold...@sift.info writes: > >> As far as I can tell, this is a misfeature of texinfo. The links only work >> to the node level (at least in the info browser). So we would need to >> reactor the document into smaller nodes to fix that. >> >> Unfortunately, in addition to requiring some work, that would also give us a >> document with very small pages, that would be a nuisance when attempting to >> read in chunks (as opposed to jumping to a very specific item). >> >> Perhaps a list member with more experience with texinfo has a suggestion? > > I think fewer than 0.0001% of readers will use an info browser to read > the ASDF manual. Improving the HTML conversion is the ticket. FWIW, I never use the HTML version. I always use info inside emacs (not the standalone version). If I want to read end-to-end, I use PDF, which has links without the annoying choppiness of a multi-page HTML document. If you use emacs as your primary development environment, info is nicely integrated. One of the advantages of Texinfo is that it provides HTML, PDF and info, for different customers. ___ asdf-devel mailing list asdf-devel@common-lisp.net http://lists.common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel
[asdf-devel] ASDF-bundle and cross-compiling with ECL
Hello, I'm looking for input/suggestions about something I've been working on that is related to asdf-bundle. I'm trying to come up with a good solution to do cross-compiling of ASDF packages using ECL. For example I want to be able to create a bundle for a system that looks like this: (asdf:defsystem openglsample :components ((:file "package") #+cross (:file "shader-vao" :depends-on ("package"))) :depends-on (#+iphone iphone #+android android #+android cl+j #+(or android iphone) cl-opengl)) Using this system definition, I'd like to be able to create monolithic bundles libopenglsample_iphone.a and libopenglsample_android.a with the constraint that the android version will include the "android" and cl+j systems and the iPhone version will contain the "iphone" system. I tried adding new operations to asdf "cross-compile-op" "cross-lib-op" see here: https://github.com/ageneau/ecl-android/tree/master/lisp-packages/asdf-cross. This mostly works but the handling of the different *features* for each target is a bit of a mess since the host and the target can have different system definitions. Also because of side-effects, cross-compiling of a particular source file might depend on the host having loaded some dependencies first except the host will load this dependency with *features* that might be different than the target. I'm wondering would this be better suited for xcvb? In particular can xcvb cross-compile a system without the host doing the cross-compilation having to load the system definition for the system it is compiling? Regards, Sylvain ___ asdf-devel mailing list asdf-devel@common-lisp.net http://lists.common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel
Re: [asdf-devel] ASDF 2.26 in Quicklisp
rpgold...@sift.info wrote: > As far as I can tell, this is a misfeature of texinfo. The links only > work to the node level (at least in the info browser). So we would > need to reactor the document into smaller nodes to fix that. That's not really a misfeature. That fact is that Texinfo uses nodes as its primary sectionning mechanism. You need to think in terms of node first when you write Texinfo. Every sectionning command that you use should be associated with a node, and every node that has sub-nodes should have a menu. It seems that you only have nodes for chapters, which explains the shaky TOC. > Unfortunately, in addition to requiring some work, that would also > give us a document with very small pages, that would be a nuisance > when attempting to read in chunks (as opposed to jumping to a very > specific item). That is correct, although I don't find that this is such a nuisance, since you have all the hyperlinks you want. Otherwise, what you can do is generate a single web page for the whole doc (Cf. --no-split). What I do find missing from Makeinfo is a --split-level option instead of the --no-split one. It would be nice if, for instance, we could specify that we want to split at the chapters level only. -- Resistance is futile. You will be jazzimilated. Scientific site: http://www.lrde.epita.fr/~didier Music (Jazz) site: http://www.didierverna.com ___ asdf-devel mailing list asdf-devel@common-lisp.net http://lists.common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel
Re: [asdf-devel] ASDF 2.26 in Quicklisp
On Wed, 2012-11-28 at 08:28 -0600, rpgold...@sift.info wrote: > As far as I can tell, this is a misfeature of texinfo. The links only > work to the node level (at least in the info browser). So we would > need to reactor the document into smaller nodes to fix that. > > Unfortunately, in addition to requiring some work, that would also > give us a document with very small pages, that would be a nuisance > when attempting to read in chunks (as opposed to jumping to a very > specific item). You might want to switch documentation format, and in that case Pandoc(http://johnmacfarlane.net/pandoc/) might help with the initial conversion. -- Stelian Ionescu a.k.a. fe[nl]ix Quidquid latine dictum sit, altum videtur. http://common-lisp.net/project/iolib signature.asc Description: This is a digitally signed message part ___ asdf-devel mailing list asdf-devel@common-lisp.net http://lists.common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel
Re: [asdf-devel] ASDF 2.26 in Quicklisp
rpgold...@sift.info writes: > As far as I can tell, this is a misfeature of texinfo. The links only work to > the node level (at least in the info browser). So we would need to reactor > the document into smaller nodes to fix that. > > Unfortunately, in addition to requiring some work, that would also give us a > document with very small pages, that would be a nuisance when attempting to > read in chunks (as opposed to jumping to a very specific item). > > Perhaps a list member with more experience with texinfo has a suggestion? I think fewer than 0.0001% of readers will use an info browser to read the ASDF manual. Improving the HTML conversion is the ticket. Zach ___ asdf-devel mailing list asdf-devel@common-lisp.net http://lists.common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel
Re: [asdf-devel] ASDF 2.26 in Quicklisp
As far as I can tell, this is a misfeature of texinfo. The links only work to the node level (at least in the info browser). So we would need to reactor the document into smaller nodes to fix that. Unfortunately, in addition to requiring some work, that would also give us a document with very small pages, that would be a nuisance when attempting to read in chunks (as opposed to jumping to a very specific item). Perhaps a list member with more experience with texinfo has a suggestion? Zach Beane wrote: >Faré writes: > >> I did a very quick pass at documenting compile-check, force-not, >> require-system, *load-system-operation*. Nothing great, but better >> than nothing. >> >> Yes, another major pass at fixing asdf.texinfo would be great. >> >> Robert, I hope everything is now going well with your family. > >The TOC at the start of the manual is great, but the links it offers >are >pretty coarse, going only to each major section rather than to a >specific subsection. That makes it somewhat difficult to link to >documentation for a specific new feature. Is there any chance of making >the links finer-grained? > >Thanks, >Zach -- Sent from my Android phone with K-9 Mail. Please excuse my brevity.___ asdf-devel mailing list asdf-devel@common-lisp.net http://lists.common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel
Re: [asdf-devel] ASDF 2.26 in Quicklisp
Faré writes: > I did a very quick pass at documenting compile-check, force-not, > require-system, *load-system-operation*. Nothing great, but better > than nothing. > > Yes, another major pass at fixing asdf.texinfo would be great. > > Robert, I hope everything is now going well with your family. The TOC at the start of the manual is great, but the links it offers are pretty coarse, going only to each major section rather than to a specific subsection. That makes it somewhat difficult to link to documentation for a specific new feature. Is there any chance of making the links finer-grained? Thanks, Zach ___ asdf-devel mailing list asdf-devel@common-lisp.net http://lists.common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel
[asdf-devel] Patch with ABCL specific changes
Attached please find a patch synchronizing the version of ASDF we intend to ship with abcl-1.1.0 with the canonical version. These changes deal with bugs when using systems contained in jar archives via the ABCL implementation specific extension of CL:PATHNAME. # ABCL specific changes # Fixes: # * ASDF definitions in jar archives for abcl-1.1.0-dev # * ASDF-Binary-Locations in jar archives diff -r 0c208158b9a0 asdf.lisp --- a/asdf.lisp Tue Nov 27 23:39:59 2012 -0500 +++ b/asdf.lisp Wed Nov 28 12:15:26 2012 +0100 @@ -3961,19 +3961,38 @@ (setf output-truename nil failure-p t))) (values output-truename warnings-p failure-p -#+abcl +#+abcl (defun* translate-jar-pathname (source wildcard) (declare (ignore wildcard)) - (let* ((p (pathname (first (pathname-device source - (root (format nil "/___jar___file___root___/~@[~A/~]" - (and (find :windows *features*) -(pathname-device p) -(apply-output-translations - (merge-pathnames* - (relativize-pathname-directory source) - (merge-pathnames* - (relativize-pathname-directory (ensure-directory-pathname p)) - root) + (let* ((jar + (pathname (first (pathname-device source + (target-root-directory-namestring + (format nil "/___jar___file___root___/~@[~A/~]" + (and (find :windows *features*) + (pathname-device jar + (relative-source + (relativize-pathname-directory source)) + (relative-jar + (relativize-pathname-directory (ensure-directory-pathname jar))) + (target-root-directory + (if (find :windows *features*) + (make-pathname :name nil + :type nil + :version nil + :defaults (parse-namestring target-root-directory-namestring)) + (make-pathname :device :unspecific + :name nil + :type nil + :version nil + :defaults (parse-namestring target-root-directory-namestring + (target-root + (merge-pathnames* relative-jar target-root-directory)) + (target + (merge-pathnames* relative-source target-root))) +(if (find :windows *features*) +(apply-output-translations target) +(make-pathname :defaults (apply-output-translations target) + :device :unspecific - Compatibility mode for ASDF-Binary-Locations @@ -4014,6 +4033,8 @@ (initialize-output-translations `(:output-translations ,@source-to-target-mappings + #+abcl (#p"jar:file:/**/*.jar!/**/*.*" (:function translate-jar-pathname)) + #+abcl (#p"/___jar___file___root___/**/*.*" (,@destination-directory)) ((:root ,*wild-inferiors* ,mapped-files) (,@destination-directory ,mapped-files)) (t t) ___ asdf-devel mailing list asdf-devel@common-lisp.net http://lists.common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel