Edit

kc3-lang/automake/TODO

Branch :

  • Show log

    Commit

  • Author : Tom Tromey
    Date : 1996-08-27 05:19:33
    Hash : 75349f4b
    Message : Do variable interpolation

  • TODO
  • Priorities for release:
      [ none ]
    
    !! Must fix require_file stuff.  It is really gross, and I don't
       understand it any more.
    
    !! remove autosystem-specific macros
    !! should write autoconf-style doc entries for each m4 macro
    
    should put inverse of @MAINT@ before `.PHONY: configure'
    
    * must update GNU Hello
    
    ** when can aclocal.m4 be auto-generated?
    
    ** many requests for a way to omit a file from the distribution.
       Should be done like `!foo' or `~foo' in _SOURCES, etc.
       Such files should be removed explicitly after the copy step!
       Doing this requires rewriting macros before generating Makefile.in.
    
    add support for Makefile.tmpl that is auto-included in every
    Makefile.am.  That makes it easier to do some non-std thing in every
    subdirectory.
    
    consider printing full file name of Makefile.am or configure.in when
    giving error.  This would help for very large trees with many
    configure.in scripts
    
    From the GNU Standards.  These things could be checked, and probably
    should be if --gnu.
    *    Make sure that the directory into which the distribution unpacks (as
    well as any subdirectories) are all world-writable (octal mode 777).
    *   Make sure that no file name in the distribution is more than 14
    characters long.
    *    Don't include any symbolic links in the distribution itself.
    *    Make sure that all the files in the distribution are world-readable.
    
    consider supporting "var+= stuff" syntax.  rewrite to just var=... on
    output.  This is sometimes convenient when you want to write a
    Makefile.am in more-or-less modular parts
    
    should be able to determine what is built by looking at rules (and
    configure.in).  Then built man pages (eg) could automatically be
    omitted from the distribution.
    
    Consider using libfoo_SOURCES, etc, for libraries.  From Gord
    Matzigkeit.  There is a patch.
    
    Idea from Joerg-Martin Schwarz: allow passing different -D flags to
    different compiles.  This can be done, but with the restriction that a
    .c cannot appear in 2 different "objects" (programs/libraries)
    compiled with different -D options (because -c and -o do not always
    work together and parallel makes must work).  This could be
    implemented by noticing whenever a ".o" target with no rules is being
    emitted, and adding the appropriate compilation rule as appropriate.
    This should work with targets from Makefile.am as well as from .P
    files, which means rewriting so that the Makefile.am contents aren't
    copied into the output immediately.  This feature is probably required
    to fully support libtool ("grody compilation issue")
    
    Henrik Frystyk Nielsen says:
    Henrik> 4) Flags like --include-deps are lost when you make changes to
    Henrik> Makefile.am files and automake is run automatically. It would
    Henrik> be nice to keep these flags as I now have to redo everything
    Henrik> manually.
    ... what about other options here too?
    
    Think about: maybe "make check" should just bomb if error occurs?
    Then user must use "make -k check".  This is probably more natural.
    
    Consider: "cvs" option adds some cvs-specific rules?
    
    "Cygnus"-specific features:
    * An option that statically rewrites @MAINT@ to "#M#".
    * Should look for certain tools in the build tree:
      expect, dejagnu, makeinfo
    * `no-installinfo' is the default
    * always generate `info' and `install-info' targets
    * Allow `texinfo.tex' to be missing
    
    Automake: should EXTRA_DIST files be statically findable?
    
    Automake: devo/inet/Makefile.am has "all-local".  "install" depends on
    "all", but the local installs get run before the stuff in "all".  Gross.
    
    Right now, targets generated internally (eg "install") are not
    overridable by user code.  This should probably be possible, even
    though it isn't very important.  This could be done by generating all
    internal rules via a function call instead of just appending to
    $output_rules.
    
    * Should be a way to have "nobuild_PROGRAMS" which aren't even built,
      but which could be by running the magic make command.
    
    * Should have tool like "autoreconf" that only remakes Makefiles that
      need it.  Probably autoreconf should be modified to handle automake
    
    Other priorities:
    * Must rewrite am_install_var.  Should break into multiple functions.
      This will allow the callers to be a little smarter.
    * Rewrite clean targets.
    * Must rewrite error handling code.  Right now it is a real mess
      Should fix up require_file junk at the same time
    
    Things to finish libtool support:
    * Handle grody compilation issue
    * Handle install changes
    * Handle clean changes
    * New definition for LINK
    
    Scan source directories and warn about missing files, eg .c/.h files
    that aren't mentioned?
    
    Need way to say there are no suffixes in a Makefile (Franc,ois'
    "override" idea suffices here)
    
    Check to make sure various scripts are executable (IE when looking for
    them in a directory)
    
    Use recode in dist target when MAINT_CHARSET specified.  Read caveats
    in automake.in before doing this.  Note the same problem used to apply
    to the no-dependencies option; maybe it still should?  Note also that
    each Makefile.am must be rewritten at "make dist" time if
    MAINT_CHARSET and DIST_CHARSET are not identical.  NOTE: gettext must
    arrange for all .po files not to be recoded.  In the long term this
    might be a problem (consider when some systems use Unicode but the
    rest do not)
      MAINT_CHARSET *must* be local to each Makefile.am, to enable
    	merged distributions.
      DIST_CHARSET must be passed down to subdir makes during a "make dist"
    
    Handle dist-zoo.  Generally add more DOS support.  Maybe run "doschk"
    (why isn't this merged with "pathchk"?) when doing a dist.  Do
    whatever else Fran