2009/2/20 Allison Randal <[email protected]>: > François Perrad wrote: >> >> Allison, Reini, >> >> Before applying to existing languages, could you review my work on >> tools/dev/mk_languages_shell.pl (r36888-36892) ? >> Is it compliant with what we want (pdd30_install) ? >> >> $ perl tools/dev/mk_languages_shell.pl Xyz >> $ make -C languages/xyz >> $ make -C languages/xyz test >> $ make -C languages/xyz install > > One general comment is that most languages (maybe all languages soon) will > be building from an installed Parrot, not from inside a languages/ directory > in the Parrot build tree. So, either we need two scripts for making a > language shell (one for languages in the build tree and one for those > outside), or we need to assume that most newbie language developers will be > outside the build tree, and make that the default case. That would imply > removing all references to $(BUILD_DIR) from the shell makefiles. > > Also, it's good to show the default way of building a grammar, an actions > file, and builtins. We shouldn't dictate that every language has MAINTAINER > and STATUS files, or a doc directory using Pod format. I wouldn't even > generate information for dynamic pmcs and ops by default (though we could > have options for mk_languages_shell.pl that add stubs for dynamic pmcs and > ops if requested). >
With r36933, a new version of tools/dev/mk_languages_shell.pl is available with the following options : --with-doc --with-ops --with-pmc And dynpmc.pl & dynoplibs.pl are not longer used. As example : - I re-run mk_languages_shell.pl in languages/squaak - I update an Allison's patch for Rakudo (see attachment) Feedback welcome. François. >> I've some remarks : >> 1) the logic that creates path with version, is duplicate : >> - install_files.pl lines 145-147 >> - install_dev_files lines 91-93 >> - mk_languages_shell.pl lines 191-193 >> The right place seems to be in config/init/install.pm > > This logic is in config/init/install.pm, and install_files.pl and > install_dev_files.pl need to be updated to use it (I'll do that now). > > So, instead of manually constructing the version directory, just append > "@versiondir@" (which will be empty for an install that isn't using > versioned directories). You can see an example in my Rakudo patch: > > http://rt.perl.org/rt3//Public/Bug/Display.html?id=63360 > >> 2) pbc_to_exe --install adds a prefix installable_, but for languages >> we need parrot- as prefix. >> The prefix installable_ is fine for parrot, pbc_dump, all that comes >> from C, but not from pbc. > > I don't understand the problem here. > >> 3) for languages with PMC or Ops, I wait for dynpmc.pl & dynoplibs.pl >> deprecation. > > Yes, those scripts are going away, to be replaced with makefiles So, it's > better to have mk_languages_shell.pl create sample makefiles (when the > appropriate options are turned on). > > Allison > >
0001-remove-dynpmc.pl-dynoplibs.pl.patch.gz
Description: GNU Zip compressed data
_______________________________________________ http://lists.parrot.org/mailman/listinfo/parrot-dev
