bug-standards
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

'tar' in the GNU Coding Standards


From: Dr. David Kirkby
Subject: 'tar' in the GNU Coding Standards
Date: Sat, 24 Oct 2009 15:35:36 +0100
User-agent: Thunderbird 2.0.0.19 (X11/20090218)

At: http://www.gnu.org/prep/standards/standards.html#Names

it says:
----------------------------------------------------------
The configure script and the Makefile rules for building and installation should not use any utilities directly except these:

     awk cat cmp cp diff echo egrep expr false grep install-info
     ln ls mkdir mv pwd rm rmdir sed sleep sort tar test touch tr true

----------------------------------------------------------

Sorry, I can't give you a diff against standards.texi or make-stds.texi but here are my thoughts, and a way to word it.

I believe 'tar' should removed from that list, but allow someone to select a variable for 'tar'. On Solaris for instance, Sun's tar can not extract all tar files programs written with GNU tar, though it does manage most of them. (It's not simply the fact some options just as z and j are not supported, but more fundamental issues.

Issues with non-GNU versions of tar are common on lots of non-linux platforms when using GNU tools.

hence it's better the user was able to write:

$ TAR=/usr/local/bin/gtar
$ export TAR



Hence I suggest a revised wording of:

--------------SUGGESTED VERSION---------------------------
The configure script and the Makefile rules for building and installation should not use any utilities directly except these:

     awk cat cmp cp diff echo egrep expr false grep install-info
     ln ls mkdir mv pwd rm rmdir sed sleep sort test touch tr true

----------------------------------------------------------


Further down, the GNU coding standards say:

------------------------------------------------------
The Makefile rules for building and installation can also use compilers and related programs, but should do so via make variables so that the user can substitute alternatives. Here are some of the programs we mean:

     ar bison cc flex install ld ldconfig lex
     make makeinfo ranlib texi2dvi yacc

Use the following make variables to run those programs:

     $(AR) $(BISON) $(CC) $(FLEX) $(INSTALL) $(LD) $(LDCONFIG) $(LEX)
     $(MAKE) $(MAKEINFO) $(RANLIB) $(TEXI2DVI) $(YACC)
----------------------------------------------------------

Given the above, I would suggest tar is added to those lists.

Hence I would suggest that the following

------------------- CURRENT VERSION ------------------------------
The Makefile rules for building and installation can also use compilers and related programs, but should do so via make variables so that the user can substitute alternatives. Here are some of the programs we mean:

     ar bison cc flex install ld ldconfig lex
     make makeinfo ranlib texi2dvi yacc

Use the following make variables to run those programs:

     $(AR) $(BISON) $(CC) $(FLEX) $(INSTALL) $(LD) $(LDCONFIG) $(LEX)
     $(MAKE) $(MAKEINFO) $(RANLIB) $(TEXI2DVI) $(YACC)
-------------------------------------------------------------------

is changed to


------------------SUGGESTED VERSION ---------------
The Makefile rules for building and installation can also use compilers and related programs, but should do so via make variables so that the user can substitute alternatives. Here are some of the programs we mean:

     ar bison cc flex install ld ldconfig lex
     makeinfo ranlib tar texi2dvi yacc

Use the following make variables to run those programs:

     $(AR) $(BISON) $(CC) $(FLEX) $(INSTALL) $(LD) $(LDCONFIG) $(LEX)
     $(MAKE) $(MAKEINFO) $(RANLIB) $(TAR) $(TEXI2DVI) $(YACC)
-------------------------------------------------------------------







reply via email to

[Prev in Thread] Current Thread [Next in Thread]