mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2025-01-12 07:26:15 +01:00
glib-compile-resources: correct resource compiler dependency for generated files
Don't require that files can be resolved when generating dependencies. Original patch by Garret Regier. https://bugzilla.gnome.org/show_bug.cgi?id=673101
This commit is contained in:
parent
05d429af9d
commit
5411a187a3
@ -214,7 +214,8 @@ end_element (GMarkupParseContext *context,
|
|||||||
|
|
||||||
else if (strcmp (element_name, "file") == 0)
|
else if (strcmp (element_name, "file") == 0)
|
||||||
{
|
{
|
||||||
gchar *file, *real_file;
|
gchar *file;
|
||||||
|
gchar *real_file = NULL;
|
||||||
gchar *key;
|
gchar *key;
|
||||||
FileData *data = NULL;
|
FileData *data = NULL;
|
||||||
char *tmp_file = NULL;
|
char *tmp_file = NULL;
|
||||||
@ -241,7 +242,7 @@ end_element (GMarkupParseContext *context,
|
|||||||
if (sourcedirs != NULL)
|
if (sourcedirs != NULL)
|
||||||
{
|
{
|
||||||
real_file = find_file (file);
|
real_file = find_file (file);
|
||||||
if (real_file == NULL)
|
if (real_file == NULL && state->collect_data)
|
||||||
{
|
{
|
||||||
g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
|
g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
|
||||||
_("Failed to locate '%s' in any source directory"), file);
|
_("Failed to locate '%s' in any source directory"), file);
|
||||||
@ -252,15 +253,17 @@ end_element (GMarkupParseContext *context,
|
|||||||
{
|
{
|
||||||
gboolean exists;
|
gboolean exists;
|
||||||
exists = g_file_test (file, G_FILE_TEST_EXISTS);
|
exists = g_file_test (file, G_FILE_TEST_EXISTS);
|
||||||
if (!exists)
|
if (!exists && state->collect_data)
|
||||||
{
|
{
|
||||||
g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
|
g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
|
||||||
_("Failed to locate '%s' in current directory"), file);
|
_("Failed to locate '%s' in current directory"), file);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
real_file = g_strdup (file);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (real_file == NULL)
|
||||||
|
real_file = g_strdup (file);
|
||||||
|
|
||||||
data = g_new0 (FileData, 1);
|
data = g_new0 (FileData, 1);
|
||||||
data->filename = g_strdup (real_file);
|
data->filename = g_strdup (real_file);
|
||||||
if (!state->collect_data)
|
if (!state->collect_data)
|
||||||
|
1
gio/tests/.gitignore
vendored
1
gio/tests/.gitignore
vendored
@ -126,6 +126,7 @@ socket-service
|
|||||||
socket-server
|
socket-server
|
||||||
srvtarget
|
srvtarget
|
||||||
task
|
task
|
||||||
|
test-generated.txt
|
||||||
test.gresource
|
test.gresource
|
||||||
test.mo
|
test.mo
|
||||||
test_resources.c
|
test_resources.c
|
||||||
|
@ -534,6 +534,10 @@ endif
|
|||||||
|
|
||||||
glib_compile_resources=$(top_builddir)/gio/glib-compile-resources
|
glib_compile_resources=$(top_builddir)/gio/glib-compile-resources
|
||||||
|
|
||||||
|
test-generated.txt: test1.txt
|
||||||
|
$(AM_V_GEN) echo "Generated" > $@ && \
|
||||||
|
cat $< >> $@
|
||||||
|
|
||||||
resources.o: test_resources2.h
|
resources.o: test_resources2.h
|
||||||
test_resources.c: test2.gresource.xml Makefile $(shell $(glib_compile_resources) --sourcedir=$(srcdir) --generate-dependencies $(srcdir)/test2.gresource.xml)
|
test_resources.c: test2.gresource.xml Makefile $(shell $(glib_compile_resources) --sourcedir=$(srcdir) --generate-dependencies $(srcdir)/test2.gresource.xml)
|
||||||
$(AM_V_GEN) $(glib_compile_resources) --target=$@ --sourcedir=$(srcdir) --generate-source --c-name _g_test1 $<
|
$(AM_V_GEN) $(glib_compile_resources) --target=$@ --sourcedir=$(srcdir) --generate-source --c-name _g_test1 $<
|
||||||
@ -548,7 +552,7 @@ test.gresource: test.gresource.xml Makefile $(shell $(glib_compile_resources) --
|
|||||||
$(AM_V_GEN) $(glib_compile_resources) --target=$@ --sourcedir=$(srcdir) $<
|
$(AM_V_GEN) $(glib_compile_resources) --target=$@ --sourcedir=$(srcdir) $<
|
||||||
|
|
||||||
EXTRA_DIST += test.gresource.xml test1.txt test2.gresource.xml test2.txt test3.gresource.xml test3.txt test4.gresource.xml
|
EXTRA_DIST += test.gresource.xml test1.txt test2.gresource.xml test2.txt test3.gresource.xml test3.txt test4.gresource.xml
|
||||||
CLEANFILES += test_resources.c test_resources2.[ch] plugin_resources.c test.gresource
|
CLEANFILES += test-generated.txt test_resources.c test_resources2.[ch] plugin_resources.c test.gresource
|
||||||
endif # !CROSS_COMPILING
|
endif # !CROSS_COMPILING
|
||||||
|
|
||||||
BUILT_SOURCES += giotypefuncs.c
|
BUILT_SOURCES += giotypefuncs.c
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<gresources>
|
<gresources>
|
||||||
<gresource>
|
<gresource>
|
||||||
|
<file >test-generated.txt</file>
|
||||||
<file compressed="true">test1.txt</file>
|
<file compressed="true">test1.txt</file>
|
||||||
<file preprocess="xml-stripblanks">test.gresource.xml</file>
|
<file preprocess="xml-stripblanks">test.gresource.xml</file>
|
||||||
</gresource>
|
</gresource>
|
||||||
|
Loading…
Reference in New Issue
Block a user