Make update-unicode target work in vpath builds
authorPeter Eisentraut <peter@eisentraut.org>
Fri, 25 Mar 2022 08:47:50 +0000 (09:47 +0100)
committerPeter Eisentraut <peter@eisentraut.org>
Fri, 25 Mar 2022 08:47:50 +0000 (09:47 +0100)
Author: Andres Freund <andres@anarazel.de>
Discussion: https://www.postgresql.org/message-id/616c6873-83b5-85c0-93cb-548977c39c60@enterprisedb.com

contrib/unaccent/Makefile
src/common/unicode/Makefile

index b8307d1601e8e3eab1c3eb8330c7661b8e94b2dc..d6c466e07adba1ef64de3e1614854e711c7ad15f 100644 (file)
@@ -27,12 +27,12 @@ include $(top_builddir)/src/Makefile.global
 include $(top_srcdir)/contrib/contrib-global.mk
 endif
 
-update-unicode: unaccent.rules
+update-unicode: $(srcdir)/unaccent.rules
 
 # Allow running this even without --with-python
 PYTHON ?= python
 
-unaccent.rules: generate_unaccent_rules.py ../../src/common/unicode/UnicodeData.txt Latin-ASCII.xml
+$(srcdir)/unaccent.rules: generate_unaccent_rules.py ../../src/common/unicode/UnicodeData.txt Latin-ASCII.xml
    $(PYTHON) $< --unicode-data-file $(word 2,$^) --latin-ascii-file $(word 3,$^) >$@
 
 # Only download it once; dependencies must match src/common/unicode/
index a3683dd86b9bc459bc2a86560cf50fd7c01e978d..60e01e748f88c492a6a65a89bac45ccc94cd01c6 100644 (file)
@@ -12,14 +12,14 @@ subdir = src/common/unicode
 top_builddir = ../../..
 include $(top_builddir)/src/Makefile.global
 
-override CPPFLAGS := -DFRONTEND $(CPPFLAGS)
+override CPPFLAGS := -DFRONTEND -I. $(CPPFLAGS)
 LIBS += $(PTHREAD_LIBS)
 
 # By default, do nothing.
 all:
 
 update-unicode: unicode_norm_table.h unicode_combining_table.h unicode_east_asian_fw_table.h unicode_normprops_table.h unicode_norm_hashfunc.h
-   mv $^ ../../../src/include/common/
+   mv $^ $(top_srcdir)/src/include/common/
    $(MAKE) normalization-check
 
 # These files are part of the Unicode Character Database. Download
@@ -33,7 +33,7 @@ UnicodeData.txt EastAsianWidth.txt DerivedNormalizationProps.txt CompositionExcl
 unicode_norm_hashfunc.h: unicode_norm_table.h
 
 unicode_norm_table.h: generate-unicode_norm_table.pl UnicodeData.txt CompositionExclusions.txt
-   $(PERL) generate-unicode_norm_table.pl
+   $(PERL) $<
 
 unicode_combining_table.h: generate-unicode_combining_table.pl UnicodeData.txt
    $(PERL) $^ >$@
@@ -58,7 +58,7 @@ submake-common:
    $(MAKE) -C .. all
 
 norm_test_table.h: generate-norm_test_table.pl NormalizationTest.txt
-   perl generate-norm_test_table.pl NormalizationTest.txt $@
+   perl $^ $@
 
 .PHONY: normalization-check