bug-gnulib@gnu.org mirror (unofficial)
 help / color / mirror / Atom feed
* gperf: Fix error when this module is required by some test module
@ 2019-01-27 23:02 Bruno Haible
  2019-01-28  0:35 ` Avoid build errors due to wrong references between modules Bruno Haible
  0 siblings, 1 reply; 2+ messages in thread
From: Bruno Haible @ 2019-01-27 23:02 UTC (permalink / raw)
  To: bug-gnulib

This gnulib-tool invocation

$ ./gnulib-tool --create-testdir --dir=../testdir --single-configure \
  argv-iter unicase/u16-casecoll unicase/u32-casecoll unicase/u8-casecoll \
  uninorm/u16-normcoll uninorm/u32-normcoll uninorm/u8-normcoll \
  unistdio/u16-vasnprintf unistdio/u16-vasprintf unistdio/u16-vsnprintf \
  unistdio/u16-vsprintf  unistdio/u32-vasnprintf unistdio/u32-vasprintf \
  unistdio/u32-vsnprintf unistdio/u32-vsprintf  unistdio/u8-vasnprintf \
  unistdio/u8-vasprintf unistdio/u8-vsnprintf unistdio/u8-vsprintf \
  unistdio/ulc-vasnprintf unistdio/ulc-vasprintf unistdio/ulc-vsnprintf \
  unistdio/ulc-vsprintf

produces a testdir that lacks the file
  gltests/uninorm/composition-table.h

The reason is that the $(GFERF) invocation fails, because GPERF is not
define in gltests/Makefile; it is only defined in gllib/Makefile.

This patch fixes it.


2019-01-27  Bruno Haible  <bruno@clisp.org>

	gperf: Fix error when this module is required by some test module.
	* modules/gperf (Applicability): Set to 'all'.

diff --git a/modules/gperf b/modules/gperf
index 1b5a40f..fc20866 100644
--- a/modules/gperf
+++ b/modules/gperf
@@ -1,6 +1,9 @@
 Description:
 Provides the GNU gperf build tool.
 
+Applicability:
+all
+
 Files:
 
 Depends-on:



^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Avoid build errors due to wrong references between modules
  2019-01-27 23:02 gperf: Fix error when this module is required by some test module Bruno Haible
@ 2019-01-28  0:35 ` Bruno Haible
  0 siblings, 0 replies; 2+ messages in thread
From: Bruno Haible @ 2019-01-28  0:35 UTC (permalink / raw)
  To: bug-gnulib

> This gnulib-tool invocation
> 
> $ ./gnulib-tool --create-testdir --dir=../testdir --single-configure \
>   argv-iter unicase/u16-casecoll unicase/u32-casecoll unicase/u8-casecoll \
>   uninorm/u16-normcoll uninorm/u32-normcoll uninorm/u8-normcoll \
>   unistdio/u16-vasnprintf unistdio/u16-vasprintf unistdio/u16-vsnprintf \
>   unistdio/u16-vsprintf  unistdio/u32-vasnprintf unistdio/u32-vasprintf \
>   unistdio/u32-vsnprintf unistdio/u32-vsprintf  unistdio/u8-vasnprintf \
>   unistdio/u8-vasprintf unistdio/u8-vsnprintf unistdio/u8-vsprintf \
>   unistdio/ulc-vasnprintf unistdio/ulc-vasprintf unistdio/ulc-vsnprintf \
>   unistdio/ulc-vsprintf

The same gnulib-tool invocation now produces a testdir that does not compile:

terminal-gcc -mandroid ... ../../gltests/uninorm/decomposition.c
../../gltests/uninorm/decomposition.c:23:33: error: decomposition-table.h: No such file or directory
...

The reason is that when we have a module dependency from module B to module A
(A != B), module A may end up in gllib/ and module B in gltests/, therefore a
#include reference from B to A must use the full relative file name. In other
words, if A has a file unifoo/somefile.h, and B has a file unifoo/mainfile.c,
then B must not contain
   #include "somefile.h"
but instead must contain
   #include "unifoo/somefile.h".

Here A = uninorm/decomposition-table and B = uninorm/decomposition.

This patch fixes all the mistakes of the same kind that I could find.


2019-01-27  Bruno Haible  <bruno@clisp.org>

	Avoid build errors due to wrong references between modules.
	* lib/uninorm/canonical-decomposition.c: Include
	"uninorm/decomposition-table.h", not "decomposition-table.h".
	* lib/uninorm/decomposition.c: Likewise.
	* lib/uninorm/u8-normalize.c: Include "uninorm/decompose-internal.h",
	not "decompose-internal.h".
	* lib/uninorm/u16-normalize.c: Likewise.
	* lib/uninorm/u32-normalize.c: Likewise.
	* lib/uninorm/uninorm-filter.c: Likewise.
	* lib/uninorm/nfkc.c: Likewise.
	* lib/uninorm/nfkd.c: Likewise.
	* lib/unicase/u8-casemap.c: Include "unicase/caseprop.h", not
	"caseprop.h".
	* lib/unicase/u8-ct-totitle.c: Likewise.
	* lib/unicase/u8-prefix-context.c: Likewise.
	* lib/unicase/u8-suffix-context.c: Likewise.
	* lib/unicase/u16-casemap.c: Likewise.
	* lib/unicase/u16-ct-totitle.c: Likewise.
	* lib/unicase/u16-prefix-context.c: Likewise.
	* lib/unicase/u16-suffix-context.c: Likewise.
	* lib/unicase/u32-casemap.c: Likewise.
	* lib/unicase/u32-ct-totitle.c: Likewise.
	* lib/unicase/u32-prefix-context.c: Likewise.
	* lib/unicase/u32-suffix-context.c: Likewise.
	* lib/unicase/u8-tolower.c: Include "unicase/unicasemap.h", not
	"unicasemap.h".
	* lib/unicase/u8-toupper.c: Likewise.
	* lib/unicase/u8-ct-tolower.c: Likewise.
	* lib/unicase/u8-ct-toupper.c: Likewise.
	* lib/unicase/u16-tolower.c: Likewise.
	* lib/unicase/u16-toupper.c: Likewise.
	* lib/unicase/u16-ct-tolower.c: Likewise.
	* lib/unicase/u16-ct-toupper.c: Likewise.
	* lib/unicase/u32-tolower.c: Likewise.
	* lib/unicase/u32-toupper.c: Likewise.
	* lib/unicase/u32-ct-tolower.c: Likewise.
	* lib/unicase/u32-ct-toupper.c: Likewise.
	* lib/unicase/u8-ct-casefold.c: Include "unicase/unicasemap.h", not
	"unicasemap.h", and "unicase/casefold.h", not "casefold.h".
	* lib/unicase/u16-ct-casefold.c: Likewise.
	* lib/unicase/u32-ct-casefold.c: Likewise.

diff --git a/lib/unicase/u16-casemap.c b/lib/unicase/u16-casemap.c
index dd0e3f3..e9d1011 100644
--- a/lib/unicase/u16-casemap.c
+++ b/lib/unicase/u16-casemap.c
@@ -27,7 +27,7 @@
 #include "unistr.h"
 #include "unictype.h"
 #include "uninorm.h"
-#include "caseprop.h"
+#include "unicase/caseprop.h"
 #include "context.h"
 #include "unicase/special-casing.h"
 
diff --git a/lib/unicase/u16-ct-casefold.c b/lib/unicase/u16-ct-casefold.c
index 47de317..9b26f73 100644
--- a/lib/unicase/u16-ct-casefold.c
+++ b/lib/unicase/u16-ct-casefold.c
@@ -24,9 +24,9 @@
 #include <stddef.h>
 #include <stdlib.h>
 
-#include "unicasemap.h"
+#include "unicase/unicasemap.h"
 #include "unicase/special-casing.h"
-#include "casefold.h"
+#include "unicase/casefold.h"
 
 #define FUNC u16_ct_casefold
 #define UNIT uint16_t
diff --git a/lib/unicase/u16-ct-tolower.c b/lib/unicase/u16-ct-tolower.c
index f7e5825..7c9f4f4 100644
--- a/lib/unicase/u16-ct-tolower.c
+++ b/lib/unicase/u16-ct-tolower.c
@@ -22,7 +22,7 @@
 
 #include <stddef.h>
 
-#include "unicasemap.h"
+#include "unicase/unicasemap.h"
 #include "unicase/special-casing.h"
 
 uint16_t *
diff --git a/lib/unicase/u16-ct-totitle.c b/lib/unicase/u16-ct-totitle.c
index 39bacb6..935cc7c 100644
--- a/lib/unicase/u16-ct-totitle.c
+++ b/lib/unicase/u16-ct-totitle.c
@@ -29,7 +29,7 @@
 #include "unictype.h"
 #include "uniwbrk.h"
 #include "uninorm.h"
-#include "caseprop.h"
+#include "unicase/caseprop.h"
 #include "context.h"
 #include "unicase/special-casing.h"
 
diff --git a/lib/unicase/u16-ct-toupper.c b/lib/unicase/u16-ct-toupper.c
index 3dec1a0..d46b4b8 100644
--- a/lib/unicase/u16-ct-toupper.c
+++ b/lib/unicase/u16-ct-toupper.c
@@ -22,7 +22,7 @@
 
 #include <stddef.h>
 
-#include "unicasemap.h"
+#include "unicase/unicasemap.h"
 #include "unicase/special-casing.h"
 
 uint16_t *
diff --git a/lib/unicase/u16-prefix-context.c b/lib/unicase/u16-prefix-context.c
index eaa8454..59634a8 100644
--- a/lib/unicase/u16-prefix-context.c
+++ b/lib/unicase/u16-prefix-context.c
@@ -22,7 +22,7 @@
 
 #include "unictype.h"
 #include "unistr.h"
-#include "caseprop.h"
+#include "unicase/caseprop.h"
 #include "context.h"
 
 #define FUNC1 u16_casing_prefix_context
diff --git a/lib/unicase/u16-suffix-context.c b/lib/unicase/u16-suffix-context.c
index d5776ae..bb388bd 100644
--- a/lib/unicase/u16-suffix-context.c
+++ b/lib/unicase/u16-suffix-context.c
@@ -22,7 +22,7 @@
 
 #include "unictype.h"
 #include "unistr.h"
-#include "caseprop.h"
+#include "unicase/caseprop.h"
 #include "context.h"
 
 #define FUNC1 u16_casing_suffix_context
diff --git a/lib/unicase/u16-tolower.c b/lib/unicase/u16-tolower.c
index e111a20..89f62bd 100644
--- a/lib/unicase/u16-tolower.c
+++ b/lib/unicase/u16-tolower.c
@@ -22,7 +22,7 @@
 
 #include <stddef.h>
 
-#include "unicasemap.h"
+#include "unicase/unicasemap.h"
 #include "unicase/special-casing.h"
 
 uint16_t *
diff --git a/lib/unicase/u16-toupper.c b/lib/unicase/u16-toupper.c
index 558a7c1..62bb3e2 100644
--- a/lib/unicase/u16-toupper.c
+++ b/lib/unicase/u16-toupper.c
@@ -22,7 +22,7 @@
 
 #include <stddef.h>
 
-#include "unicasemap.h"
+#include "unicase/unicasemap.h"
 #include "unicase/special-casing.h"
 
 uint16_t *
diff --git a/lib/unicase/u32-casemap.c b/lib/unicase/u32-casemap.c
index 8c96895..3d965f4 100644
--- a/lib/unicase/u32-casemap.c
+++ b/lib/unicase/u32-casemap.c
@@ -27,7 +27,7 @@
 #include "unistr.h"
 #include "unictype.h"
 #include "uninorm.h"
-#include "caseprop.h"
+#include "unicase/caseprop.h"
 #include "context.h"
 #include "unicase/special-casing.h"
 
diff --git a/lib/unicase/u32-ct-casefold.c b/lib/unicase/u32-ct-casefold.c
index 4bd9b4b..5c077e8 100644
--- a/lib/unicase/u32-ct-casefold.c
+++ b/lib/unicase/u32-ct-casefold.c
@@ -24,9 +24,9 @@
 #include <stddef.h>
 #include <stdlib.h>
 
-#include "unicasemap.h"
+#include "unicase/unicasemap.h"
 #include "unicase/special-casing.h"
-#include "casefold.h"
+#include "unicase/casefold.h"
 
 #define FUNC u32_ct_casefold
 #define UNIT uint32_t
diff --git a/lib/unicase/u32-ct-tolower.c b/lib/unicase/u32-ct-tolower.c
index 3d3578c..998472d 100644
--- a/lib/unicase/u32-ct-tolower.c
+++ b/lib/unicase/u32-ct-tolower.c
@@ -22,7 +22,7 @@
 
 #include <stddef.h>
 
-#include "unicasemap.h"
+#include "unicase/unicasemap.h"
 #include "unicase/special-casing.h"
 
 uint32_t *
diff --git a/lib/unicase/u32-ct-totitle.c b/lib/unicase/u32-ct-totitle.c
index 91563b0..3bc7ab1 100644
--- a/lib/unicase/u32-ct-totitle.c
+++ b/lib/unicase/u32-ct-totitle.c
@@ -29,7 +29,7 @@
 #include "unictype.h"
 #include "uniwbrk.h"
 #include "uninorm.h"
-#include "caseprop.h"
+#include "unicase/caseprop.h"
 #include "context.h"
 #include "unicase/special-casing.h"
 
diff --git a/lib/unicase/u32-ct-toupper.c b/lib/unicase/u32-ct-toupper.c
index c2a1e3f..9cbd384 100644
--- a/lib/unicase/u32-ct-toupper.c
+++ b/lib/unicase/u32-ct-toupper.c
@@ -22,7 +22,7 @@
 
 #include <stddef.h>
 
-#include "unicasemap.h"
+#include "unicase/unicasemap.h"
 #include "unicase/special-casing.h"
 
 uint32_t *
diff --git a/lib/unicase/u32-prefix-context.c b/lib/unicase/u32-prefix-context.c
index 2e2212e..5049cd0 100644
--- a/lib/unicase/u32-prefix-context.c
+++ b/lib/unicase/u32-prefix-context.c
@@ -22,7 +22,7 @@
 
 #include "unictype.h"
 #include "unistr.h"
-#include "caseprop.h"
+#include "unicase/caseprop.h"
 #include "context.h"
 
 #define FUNC1 u32_casing_prefix_context
diff --git a/lib/unicase/u32-suffix-context.c b/lib/unicase/u32-suffix-context.c
index d4d2e1d..c239de8 100644
--- a/lib/unicase/u32-suffix-context.c
+++ b/lib/unicase/u32-suffix-context.c
@@ -22,7 +22,7 @@
 
 #include "unictype.h"
 #include "unistr.h"
-#include "caseprop.h"
+#include "unicase/caseprop.h"
 #include "context.h"
 
 #define FUNC1 u32_casing_suffix_context
diff --git a/lib/unicase/u32-tolower.c b/lib/unicase/u32-tolower.c
index a8f76f2..b983aed 100644
--- a/lib/unicase/u32-tolower.c
+++ b/lib/unicase/u32-tolower.c
@@ -22,7 +22,7 @@
 
 #include <stddef.h>
 
-#include "unicasemap.h"
+#include "unicase/unicasemap.h"
 #include "unicase/special-casing.h"
 
 uint32_t *
diff --git a/lib/unicase/u32-toupper.c b/lib/unicase/u32-toupper.c
index bf7bdd6..7c751c6 100644
--- a/lib/unicase/u32-toupper.c
+++ b/lib/unicase/u32-toupper.c
@@ -22,7 +22,7 @@
 
 #include <stddef.h>
 
-#include "unicasemap.h"
+#include "unicase/unicasemap.h"
 #include "unicase/special-casing.h"
 
 uint32_t *
diff --git a/lib/unicase/u8-casemap.c b/lib/unicase/u8-casemap.c
index 2ef0386..341d2cd 100644
--- a/lib/unicase/u8-casemap.c
+++ b/lib/unicase/u8-casemap.c
@@ -27,7 +27,7 @@
 #include "unistr.h"
 #include "unictype.h"
 #include "uninorm.h"
-#include "caseprop.h"
+#include "unicase/caseprop.h"
 #include "context.h"
 #include "unicase/special-casing.h"
 
diff --git a/lib/unicase/u8-ct-casefold.c b/lib/unicase/u8-ct-casefold.c
index 054a504..436da52 100644
--- a/lib/unicase/u8-ct-casefold.c
+++ b/lib/unicase/u8-ct-casefold.c
@@ -24,9 +24,9 @@
 #include <stddef.h>
 #include <stdlib.h>
 
-#include "unicasemap.h"
+#include "unicase/unicasemap.h"
 #include "unicase/special-casing.h"
-#include "casefold.h"
+#include "unicase/casefold.h"
 
 #define FUNC u8_ct_casefold
 #define UNIT uint8_t
diff --git a/lib/unicase/u8-ct-tolower.c b/lib/unicase/u8-ct-tolower.c
index 00314c2..63fa1ff 100644
--- a/lib/unicase/u8-ct-tolower.c
+++ b/lib/unicase/u8-ct-tolower.c
@@ -22,7 +22,7 @@
 
 #include <stddef.h>
 
-#include "unicasemap.h"
+#include "unicase/unicasemap.h"
 #include "unicase/special-casing.h"
 
 uint8_t *
diff --git a/lib/unicase/u8-ct-totitle.c b/lib/unicase/u8-ct-totitle.c
index d220395..74de537 100644
--- a/lib/unicase/u8-ct-totitle.c
+++ b/lib/unicase/u8-ct-totitle.c
@@ -29,7 +29,7 @@
 #include "unictype.h"
 #include "uniwbrk.h"
 #include "uninorm.h"
-#include "caseprop.h"
+#include "unicase/caseprop.h"
 #include "context.h"
 #include "unicase/special-casing.h"
 
diff --git a/lib/unicase/u8-ct-toupper.c b/lib/unicase/u8-ct-toupper.c
index 414760f..8603a3c 100644
--- a/lib/unicase/u8-ct-toupper.c
+++ b/lib/unicase/u8-ct-toupper.c
@@ -22,7 +22,7 @@
 
 #include <stddef.h>
 
-#include "unicasemap.h"
+#include "unicase/unicasemap.h"
 #include "unicase/special-casing.h"
 
 uint8_t *
diff --git a/lib/unicase/u8-prefix-context.c b/lib/unicase/u8-prefix-context.c
index 4e7c2be..0f32d9c 100644
--- a/lib/unicase/u8-prefix-context.c
+++ b/lib/unicase/u8-prefix-context.c
@@ -22,7 +22,7 @@
 
 #include "unictype.h"
 #include "unistr.h"
-#include "caseprop.h"
+#include "unicase/caseprop.h"
 #include "context.h"
 
 #define FUNC1 u8_casing_prefix_context
diff --git a/lib/unicase/u8-suffix-context.c b/lib/unicase/u8-suffix-context.c
index f891db2..b5a46ed 100644
--- a/lib/unicase/u8-suffix-context.c
+++ b/lib/unicase/u8-suffix-context.c
@@ -22,7 +22,7 @@
 
 #include "unictype.h"
 #include "unistr.h"
-#include "caseprop.h"
+#include "unicase/caseprop.h"
 #include "context.h"
 
 #define FUNC1 u8_casing_suffix_context
diff --git a/lib/unicase/u8-tolower.c b/lib/unicase/u8-tolower.c
index 087c078..b2f0085 100644
--- a/lib/unicase/u8-tolower.c
+++ b/lib/unicase/u8-tolower.c
@@ -22,7 +22,7 @@
 
 #include <stddef.h>
 
-#include "unicasemap.h"
+#include "unicase/unicasemap.h"
 #include "unicase/special-casing.h"
 
 uint8_t *
diff --git a/lib/unicase/u8-toupper.c b/lib/unicase/u8-toupper.c
index f2fd6a7..99d6ef2 100644
--- a/lib/unicase/u8-toupper.c
+++ b/lib/unicase/u8-toupper.c
@@ -22,7 +22,7 @@
 
 #include <stddef.h>
 
-#include "unicasemap.h"
+#include "unicase/unicasemap.h"
 #include "unicase/special-casing.h"
 
 uint8_t *
diff --git a/lib/uninorm/canonical-decomposition.c b/lib/uninorm/canonical-decomposition.c
index b20ca02..ecd3bb9 100644
--- a/lib/uninorm/canonical-decomposition.c
+++ b/lib/uninorm/canonical-decomposition.c
@@ -22,7 +22,7 @@
 
 #include <stdlib.h>
 
-#include "decomposition-table.h"
+#include "uninorm/decomposition-table.h"
 
 int
 uc_canonical_decomposition (ucs4_t uc, ucs4_t *decomposition)
diff --git a/lib/uninorm/decomposition.c b/lib/uninorm/decomposition.c
index 5d622a9..a0e6cfc 100644
--- a/lib/uninorm/decomposition.c
+++ b/lib/uninorm/decomposition.c
@@ -20,7 +20,7 @@
 /* Specification.  */
 #include "uninorm.h"
 
-#include "decomposition-table.h"
+#include "uninorm/decomposition-table.h"
 
 int
 uc_decomposition (ucs4_t uc, int *decomp_tag, ucs4_t *decomposition)
diff --git a/lib/uninorm/nfkc.c b/lib/uninorm/nfkc.c
index 35f43d9..b41e266 100644
--- a/lib/uninorm/nfkc.c
+++ b/lib/uninorm/nfkc.c
@@ -21,7 +21,7 @@
 #include "uninorm.h"
 
 #include "normalize-internal.h"
-#include "decompose-internal.h"
+#include "uninorm/decompose-internal.h"
 
 const struct unicode_normalization_form uninorm_nfkc =
   {
diff --git a/lib/uninorm/nfkd.c b/lib/uninorm/nfkd.c
index d34ff6f..c98492c 100644
--- a/lib/uninorm/nfkd.c
+++ b/lib/uninorm/nfkd.c
@@ -21,7 +21,7 @@
 #include "uninorm.h"
 
 #include "normalize-internal.h"
-#include "decompose-internal.h"
+#include "uninorm/decompose-internal.h"
 
 const struct unicode_normalization_form uninorm_nfkd =
   {
diff --git a/lib/uninorm/u16-normalize.c b/lib/uninorm/u16-normalize.c
index 5f634ed..4319f64 100644
--- a/lib/uninorm/u16-normalize.c
+++ b/lib/uninorm/u16-normalize.c
@@ -28,7 +28,7 @@
 #include "unistr.h"
 #include "unictype.h"
 #include "normalize-internal.h"
-#include "decompose-internal.h"
+#include "uninorm/decompose-internal.h"
 
 #define FUNC u16_normalize
 #define UNIT uint16_t
diff --git a/lib/uninorm/u32-normalize.c b/lib/uninorm/u32-normalize.c
index b7ee8c0..20d1479 100644
--- a/lib/uninorm/u32-normalize.c
+++ b/lib/uninorm/u32-normalize.c
@@ -28,7 +28,7 @@
 #include "unistr.h"
 #include "unictype.h"
 #include "normalize-internal.h"
-#include "decompose-internal.h"
+#include "uninorm/decompose-internal.h"
 
 #define FUNC u32_normalize
 #define UNIT uint32_t
diff --git a/lib/uninorm/u8-normalize.c b/lib/uninorm/u8-normalize.c
index a5ee06a..fe530ac 100644
--- a/lib/uninorm/u8-normalize.c
+++ b/lib/uninorm/u8-normalize.c
@@ -28,7 +28,7 @@
 #include "unistr.h"
 #include "unictype.h"
 #include "normalize-internal.h"
-#include "decompose-internal.h"
+#include "uninorm/decompose-internal.h"
 
 #define FUNC u8_normalize
 #define UNIT uint8_t
diff --git a/lib/uninorm/uninorm-filter.c b/lib/uninorm/uninorm-filter.c
index 73145da..e1933c7 100644
--- a/lib/uninorm/uninorm-filter.c
+++ b/lib/uninorm/uninorm-filter.c
@@ -27,7 +27,7 @@
 
 #include "unictype.h"
 #include "normalize-internal.h"
-#include "decompose-internal.h"
+#include "uninorm/decompose-internal.h"
 
 
 struct uninorm_filter



^ permalink raw reply related	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2019-01-28  0:35 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-01-27 23:02 gperf: Fix error when this module is required by some test module Bruno Haible
2019-01-28  0:35 ` Avoid build errors due to wrong references between modules Bruno Haible

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).