Discussion:
"make dist" does not include some Gnulib files
John Zaitseff
2017-05-23 00:14:33 UTC
Permalink
Dear Gnulib maintainers,

I'm not sure whether the following is a bug or a feature: running
"make dist" on a project will not include a fair number of Gnulib M4
macros.

In particular, I am using Gnulib in my Star Traders program, a
simple game of interstellar trading. The Git repository can be
browsed at http://www.zap.org.au/gitweb/trader.git . The "master"
branch contains my source code without auto-generated files.

If you clone my repository, then run "./build-aux/bootstrap" with
Autoconf 2.69, Automake 1.15, Gettext 0.19.8.1 and Gnulib as at
commit abdd68df1a22db62a7eb68ed93fed51f7988578e, you will get the
files in the "with-autogenerated" branch.

If you then run "./configure && make && make dist", the resulting
tar.gz and tar.xz archives SHOULD, I believe, contain everything in
the "with-autogenerated" branch, except for Git-specific files.

However, and this is what I think is a bug, the following files are
NOT included in the generated archives:

m4/glibc2.m4
m4/gnulib-tool.m4
m4/intdiv0.m4
m4/intl.m4
m4/intldir.m4
m4/intmax.m4
m4/inttypes-pri.m4
m4/inttypes_h.m4
m4/lcmessage.m4
m4/lock.m4
m4/printf-posix.m4
m4/size_max.m4
m4/stdint_h.m4
m4/threadlib.m4
m4/uintmax_t.m4
m4/visibility.m4
m4/xsize.m4

You can find the gnulib-cache.m4 file I am using at:

http://www.zap.org.au/gitweb/trader.git/blob_plain/e19f1b99b2ef5af7c7369348401d49837d8702f2:/m4/gnulib-cache.m4

The command line I used originally to generate that file is:

gnulib-tool --import --lib=libgnu --source-base=lib --m4-base=m4 --doc-base=doc --tests-base=tests --aux-dir=build-aux --no-conditional-dependencies --no-libtool --macro-prefix=gl assert btowc config-h crc getopt-gnu gettext gettext-h gettimeofday locale mbrtowc mbsrtowcs stdbool stdio striconv string strstr sys_stat sys_time unistd wchar wcrtomb wcsdup wctob wctype-h

Please let me know if you require any further information.

Yours truly,

John Zaitseff
--
John Zaitseff ,--_|\ The ZAP Group
Phone: +61 2 9643 7737 / \ Sydney, Australia
E-mail: ***@zap.org.au \_,--._* http://www.zap.org.au/
v
John Zaitseff
2017-05-23 19:08:28 UTC
Permalink
Hi,
Post by John Zaitseff
I'm not sure whether the following is a bug or a feature: running
"make dist" on a project will not include a fair number of Gnulib
M4 macros.
I've discovered that most of the files are from the obsolete module
"gettext", and that is why they have not been included.

I've removed that module from the latest "master" branch. Now when
Post by John Zaitseff
In particular, I am using Gnulib in my Star Traders program, a
simple game of interstellar trading. The Git repository can be
browsed at http://www.zap.org.au/gitweb/trader.git . The "master"
branch contains my source code without auto-generated files.
If you clone my repository, then run "./build-aux/bootstrap" with
Autoconf 2.69, Automake 1.15, Gettext 0.19.8.1 and Gnulib as at
commit abdd68df1a22db62a7eb68ed93fed51f7988578e, you will get the
files in the "with-autogenerated" branch.
If you then run "./configure && make && make dist", the resulting
tar.gz and tar.xz archives SHOULD, I believe, contain everything
in the "with-autogenerated" branch, except for Git-specific files.
However, and this is what I think is a bug, the following files
m4/glibc2.m4
m4/gnulib-tool.m4
m4/intdiv0.m4
m4/intl.m4
m4/intldir.m4
m4/intmax.m4
m4/inttypes-pri.m4
m4/inttypes_h.m4
m4/lcmessage.m4
m4/lock.m4
m4/printf-posix.m4
m4/size_max.m4
m4/stdint_h.m4
m4/threadlib.m4
m4/uintmax_t.m4
m4/visibility.m4
m4/xsize.m4
Now only one file is not included in the generated archive:

m4/gnulib-tool.m4

I'm guessing that that file is not needed for actual building? Is
it a temporary file used by gnulib-tool and thus should be ignored
and treated as a build file only?

Yours truly,

John Zaitseff

--
John Zaitseff ,--_|\ The ZAP Group
Phone: +61 2 9643 7737 / \ Sydney, Australia
E-mail: ***@zap.org.au \_,--._* http://www.zap.org.au/
v
Bruno Haible
2017-11-18 15:34:49 UTC
Permalink
Post by John Zaitseff
m4/gnulib-tool.m4
I'm guessing that that file is not needed for actual building? Is
it a temporary file used by gnulib-tool and thus should be ignored
and treated as a build file only?
Yes, this file is not used for building. You can ignore it.

This file could be used by gnulib-tool itself for parsing the gnulib-cache.m4
file. Currently this parsing is done through 'sed', thus it does not use
gnulib-tool.m4, but if at some point in the future gnulib-tool were to
use 'autom4te' for the parsing, it would need gnulib-tool.m4.

Bruno

Loading...