Re: [asdf-devel] ASDF 2.26 in Quicklisp

2012-11-28 Thread Robert Goldman
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

2012-11-28 Thread Faré
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

2012-11-28 Thread Zach Beane
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

2012-11-28 Thread Robert Goldman
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

2012-11-28 Thread Robert Goldman
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

2012-11-28 Thread Didier Verna
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

2012-11-28 Thread Robert Goldman
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

2012-11-28 Thread Zach Beane
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

2012-11-28 Thread Robert Goldman
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

2012-11-28 Thread Sylvain Ageneau
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

2012-11-28 Thread Didier Verna
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

2012-11-28 Thread Stelian Ionescu
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

2012-11-28 Thread Zach Beane
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

2012-11-28 Thread rpgoldman
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

2012-11-28 Thread Zach Beane
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

2012-11-28 Thread Mark Evenson
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