[PATCH] Fix build when builddir != srcdir

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The following build error occurs when building outside of the source
directory:

glib-mkenums --template spice-server-enums.tmpl.c ../../server/spice-server.h > spice-server-enums.c
Can't open spice-server-enums.tmpl.c: No such file or directory
Makefile:1111: recipe for target 'spice-server-enums.c' failed

GNU Make does some magic to know that the spice-server-enums.tmpl.c file
listed in the prerequisites for the rule is located in the srcdir. But
when we use the bare filename in the rule definition, it assumes that it is
in the builddir. If there was an automatic variable that we could use
(like $< that we already use for the first prerequisite), the srdir
would be automatically prepended to the filename, but there's nothing we
can use for the second prerequisite. So we need to explicitly specify
the location of the input template file.
---
 server/Makefile.am | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/server/Makefile.am b/server/Makefile.am
index 972f3e2..949e56a 100644
--- a/server/Makefile.am
+++ b/server/Makefile.am
@@ -202,10 +202,10 @@ libspice_server_la_LIBADD = libserver.la
 libspice_server_la_SOURCES =
 
 spice-server-enums.c: spice-server.h spice-server-enums.tmpl.c
-	$(AM_V_GEN)glib-mkenums --template spice-server-enums.tmpl.c $< > $@
+	$(AM_V_GEN)glib-mkenums --template $(srcdir)/spice-server-enums.tmpl.c $< > $@
 
 spice-server-enums.h: spice-server.h spice-server-enums.tmpl.h
-	$(AM_V_GEN)glib-mkenums --template spice-server-enums.tmpl.h $< > $@
+	$(AM_V_GEN)glib-mkenums --template $(srcdir)/spice-server-enums.tmpl.h $< > $@
 
 EXTRA_DIST =					\
 	spice-bitmap-utils.tmpl.c			\
-- 
2.7.4

_______________________________________________
Spice-devel mailing list
Spice-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/spice-devel




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]     [Monitors]