[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: gnulib creates tests/ directory
From: |
Bruno Haible |
Subject: |
Re: gnulib creates tests/ directory |
Date: |
Fri, 16 Aug 2024 18:03:11 +0200 |
Hi Marc,
Please keep the mailing list in CC.
> > Does it still do so if you remove the 'valgrind-tests' modules from the
> > list?
> >
>
> It does not.
OK, then the problem is that gnulib-tool does not know that 'valgrind-tests'
is special. Fixed like this.
We could have noticed the problem before, by looking at the gnulib-tool
results in liboath/ and libpskc/ of oath-toolkit.
2024-08-16 Bruno Haible <bruno@clisp.org>
gnulib-tool.py: Don't treat 'valgrind-tests' as a tests module.
Reported by Marc Nieper-Wißkirchen <marc.nieper+gnu@gmail.com> in
<https://lists.gnu.org/archive/html/bug-gnulib/2024-08/msg00093.html>.
* pygnulib/GLModuleSystem.py (_isTestsModuleName): New function.
(GLModuleSystem.list, GLModule.isNonTests, GLModule.getApplicability,
GLModule.getDependencies, GLModule.getAutomakeSnippet_Unconditional,
GLModule.getLicense): Use it.
diff --git a/pygnulib/GLModuleSystem.py b/pygnulib/GLModuleSystem.py
index 09afcf6883..1f758fb0e5 100644
--- a/pygnulib/GLModuleSystem.py
+++ b/pygnulib/GLModuleSystem.py
@@ -55,6 +55,10 @@ def _extract_lib_SOURCES(snippet: str) -> list[str]:
for line in lines
for file_name in line.split() ]
+def _isTestsModuleName(name: str) -> bool:
+ '''Determine whether a module is a tests module, given its name.'''
+ return name.endswith('-tests') and name != 'valgrind-tests'
+
#===============================================================================
# Define GLModuleSystem class
@@ -162,7 +166,7 @@ def list(self) -> list[str]:
# Filter out undesired file names.
listing = [ line
for line in listing
- if self.file_is_module(line) and not
line.endswith('-tests') ]
+ if self.file_is_module(line) and not
_isTestsModuleName(line) ]
modules = sorted(set(listing))
return modules
@@ -307,7 +311,7 @@ def isTests(self) -> bool:
def isNonTests(self) -> bool:
'''Check whether module is not a *-tests module.'''
- result = not self.name.endswith('-tests')
+ result = not _isTestsModuleName(self.name)
return result
def getTestsName(self) -> str:
@@ -426,7 +430,7 @@ def getApplicability(self) -> str:
result = result.strip()
if not result:
# The default is 'main' or 'tests', depending on the module's
name.
- if self.name.endswith('-tests'):
+ if _isTestsModuleName(self.name):
result = 'tests'
else:
result = 'main'
@@ -467,7 +471,7 @@ def getDependencies(self) -> str:
if 'dependencies' not in self.cache:
result = ''
# ${module}-tests implicitly depends on ${module}, if that module
exists.
- if self.name.endswith('-tests'):
+ if _isTestsModuleName(self.name):
main_module = subend('-tests', '', self.name)
if self.modulesystem.exists(main_module):
result += '%s\n' % main_module
@@ -657,7 +661,7 @@ def getAutomakeSnippet_Unconditional(self) -> str:
auxdir = self.config['auxdir']
result = ''
if 'makefile-unconditional' not in self.cache:
- if self.name.endswith('-tests'):
+ if _isTestsModuleName(self.name):
# *-tests module live in tests/, not lib/.
# Synthesize an EXTRA_DIST augmentation.
files = self.getFiles()
@@ -734,7 +738,7 @@ def getLicense(self) -> str:
if 'license' not in self.cache:
license = self.getLicense_Raw().strip()
# Warn if the License field is missing.
- if not self.name.endswith('-tests'):
+ if not _isTestsModuleName(self.name):
if not license:
if self.config['errors']:
raise GLError(18, self.name)
- gnulib creates tests/ directory, Marc Nieper-Wißkirchen, 2024/08/16
- Re: gnulib creates tests/ directory, Bruno Haible, 2024/08/16
- Message not available
- Re: gnulib creates tests/ directory,
Bruno Haible <=
- Re: gnulib creates tests/ directory, Marc Nieper-Wißkirchen, 2024/08/16
- Re: gnulib creates tests/ directory, Simon Josefsson, 2024/08/17
- Re: gnulib creates tests/ directory, Bruno Haible, 2024/08/17
- Re: gnulib creates tests/ directory, Simon Josefsson, 2024/08/17
- Re: gnulib creates tests/ directory, Bruno Haible, 2024/08/17
- Re: gnulib creates tests/ directory, Marc Nieper-Wißkirchen, 2024/08/17
- Re: gnulib creates tests/ directory, Bruno Haible, 2024/08/17
- Re: gnulib creates tests/ directory, Marc Nieper-Wißkirchen, 2024/08/17
- Re: gnulib-tool shell vs. Python, Bruno Haible, 2024/08/17