[Asdf-devel] Minor minimakefile nit

Faré fahree at gmail.com
Tue Sep 2 16:34:39 UTC 2014


On Tue, Sep 2, 2014 at 9:19 AM, Robert Goldman <rpgoldman at sift.net> wrote:
> Robert P. Goldman wrote:
>> The minimakefile help lists:
>>
>> archive                      alias for command make-and-publish-archive
>>
>> but make-and-publish-archive is not listed as a command in the help, nor
>> in the makefile. Is this description out of date?
>>
The list of public commands is currently a list returned by function
public-commands.
I just updated it to include this function. This mechanism could be improved.
(For instance, which commands are public could be based on package
exported symbols.)

>> Question: can we do a long help for individual commands, like
>>
>> make help archive?
>>
./tools/asdf-tools help archive
or M-. after having loaded asdf-tools

>> As an aside, I would say that if one is interested in making CL a
>> serious scripting contender, some equivalent of perl's Getopt::Long
>> library for command line parsing (perhaps Didier's Clon would fit the
>> bill?), and pod inline documentation is going to be critical.
>>
Quicklisp has plenty of such libraries,
including my own command-line-arguments
and Didier's CLON. There are plenty more, but
for historical reasons rooted in backward compatibility with the
former Makefile,
I'm not using any.

>> I pushed a comment on the makefile to explain at the top how to get help.
>
> The flipside to my earlier argument about putting back the test
> scripting using bash and make alone is
>
> "given the asdf builder scripts, what function does the makefile serve now?"
>
The Makefile serves the following purposes:
* bootstrap asdf, with make all, aka make build/asdf.lisp
* download libraries, with make ext, aka git submodule update
* thin backward-compatible shim around ./tools/asdf-tools

> What assistance is offered by having someone use
>
> make archive
>
> instead of simply
>
> asdf-builder archive ?
>
make archive will make sure build/asdf.lisp is updated before it
invokes asdf-tools.

> What benefit does the make shim provide?  I suppose it chains together
> dependencies, but given that the makefile shows hardly any use of the
> filesystem to track the need (or lack thereof) of building, make seems
> to me like just a barrier to the user's understanding of the function.
>
Yes, it's mostly useless.

> For make test and for the file concatenation, make provides the ability
> to do the core operations with no additional machinery.  So those seem
> good. But for the other functions, it just seems like make is adding a
> cumbersome layer of indirection.
>
Yes, it's a layer of indirection. But it's simpler and shorter to
write make archive
than to write ./tools/asdf-tools archive

—♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• http://fare.tunes.org
In a just society, it is shameful to be poor.
In a corrupt society, it is shameful to be rich. — Confucius




More information about the asdf-devel mailing list