When testing the last patch I noticed that gnulib-tool and gnulib-tool.py output file lists assigned to Make variables in a different order. Here is an example:
$ gnulib-tool --create-testdir --dir test-shell fts $ gnulib-tool.py --create-testdir --dir test-python fts $ git diff --no-index test-python/gltests/Makefile.am test-shell/gltests/Makefile.am Gives lots of lines like this: -EXTRA_DIST += macros.h signature.h test-ftruncate.c test-ftruncate.sh +EXTRA_DIST += test-ftruncate.c test-ftruncate.sh signature.h macros.h It seems that the Python version sorts the files in GLModule.getAutomakeSnippet_Unconditional and the shell script doesn't in func_get_automake_snippet_unconditional. Either one of the diff's below should fix the discrepancy. I'm not sure which one would be preferred though. I feel like the sorting shouldn't take much time, but it might be worth saving gnulib-tool the work. :) Same but unsorted: diff --git a/pygnulib/GLModuleSystem.py b/pygnulib/GLModuleSystem.py index 3672474fa1..86794cf80e 100644 --- a/pygnulib/GLModuleSystem.py +++ b/pygnulib/GLModuleSystem.py @@ -571,7 +571,6 @@ class GLModule(object): files = self.getFiles() extra_files = filter_filelist(constants.NL, files, 'tests/', '', 'tests/', '').split(constants.NL) - extra_files = sorted(set(extra_files)) if extra_files: result += 'EXTRA_DIST += %s' % ' '.join(extra_files) result += constants.NL * 2 or Same but sorted: diff --git a/gnulib-tool b/gnulib-tool index a7ba7a98f1..a1252fc709 100755 --- a/gnulib-tool +++ b/gnulib-tool @@ -2561,7 +2561,7 @@ func_get_automake_snippet_unconditional () # Synthesize an EXTRA_DIST augmentation. all_files=`func_get_filelist $1` func_filter_filelist tests_files " " "$all_files" 'tests/' '' 'tests/' '' - extra_files="$tests_files" + extra_files="`for f in $tests_files; do echo $f; done | LC_ALL=C sort -u`" if test -n "$extra_files"; then echo "EXTRA_DIST +=" $extra_files echo Collin