File: Makefile.am

package info (click to toggle)
libgda4 4.0.12-1
  • links: PTS, VCS
  • area: main
  • in suites: squeeze
  • size: 34,928 kB
  • ctags: 18,543
  • sloc: ansic: 187,884; sh: 10,317; xml: 7,903; yacc: 3,454; makefile: 1,974; java: 1,253; python: 896; sql: 321
file content (114 lines) | stat: -rw-r--r-- 4,864 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
noinst_LTLIBRARIES = libgda_sql_parser-4.0.la
noinst_PROGRAMS = 

AM_CPPFLAGS = \
	-I$(top_srcdir) -I$(srcdir)/.. \
        -I$(top_builddir) \
        $(LIBGDA_CFLAGS)

lemon$(EXEEXT_FOR_BUILD): lemon.c
	$(CC_FOR_BUILD) -o lemon$(EXEEXT_FOR_BUILD) $(srcdir)/lemon.c

gen_def$(EXEEXT_FOR_BUILD): gen_def.c
	 $(CC_FOR_BUILD) -o gen_def$(EXEEXT_FOR_BUILD) -DSRCDIR=\"$(srcdir)\" $(srcdir)/gen_def.c

parser.c parser.h: parser.y lemon$(EXEEXT_FOR_BUILD)
	- ./lemon$(EXEEXT_FOR_BUILD) -q -d $(srcdir)/parser.y $(srcdir)/lempar.c

delimiter.c delimiter.h: delimiter.y lemon$(EXEEXT_FOR_BUILD)
	./lemon$(EXEEXT_FOR_BUILD) -q -d $(srcdir)/delimiter.y $(srcdir)/lempar.c

token_types.h: gen_def$(EXEEXT_FOR_BUILD) delimiter.h parser.h
	./gen_def$(EXEEXT_FOR_BUILD) > token_types.h

libgda_sql_parser_headers = \
	gda-sql-parser.h \
	gda-sql-statement.h \
	gda-statement-struct-decl.h \
	gda-statement-struct.h \
	gda-statement-struct-compound.h \
	gda-statement-struct-delete.h \
	gda-statement-struct-update.h \
	gda-statement-struct-insert.h \
	gda-statement-struct-parts.h \
	gda-statement-struct-pspec.h \
	gda-statement-struct-select.h \
	gda-statement-struct-trans.h \
	gda-statement-struct-unknown.h \
	gda-statement-struct-util.h

gda-sql-parser-enum-types.h: s-enum-types-h
	@true

s-enum-types-h: @REBUILD@ $(libgda_sql_parser_headers) Makefile
	( cd $(srcdir) && glib-mkenums \
	                --fhead "#ifndef __LIBGDA_SQL_PARSER_ENUM_TYPES_H__\n#define __LIBGDA_SQL_PARSER_ENUM_TYPES_H__\n\n#include <glib-object.h>\n\nG_BEGIN_DECLS\n" \
			--fprod "/* enumerations from \"@filename@\" */\n" \
			--vhead "GType @enum_name@_get_type (void);\n#define GDA_TYPE_@ENUMSHORT@ (@enum_name@_get_type())\n" 	\
			--ftail "G_END_DECLS\n\n#endif /* __LIBGDA_ENUM_TYPES_H__ */" \
		$(libgda_sql_parser_headers)) > tmp-gda-enum-types.h \
	&& (cmp -s tmp-gda-enum-types.h gda-sql-parser-enum-types.h || cp tmp-gda-enum-types.h gda-sql-parser-enum-types.h ) \
	&& rm -f tmp-gda-enum-types.h	\
	&& cat $(srcdir)/gda-sql-parser-enum-types.h.KEEPAPI >> gda-sql-parser-enum-types.h \
	&& echo timestamp > $(@F)

gda-sql-parser-enum-types.c: s-enum-types-c
	@true

s-enum-types-c: @REBUILD@ $(libgda_sql_parser_headers) Makefile
	( cd $(srcdir) && glib-mkenums \
	                --fhead "#include <sql-parser/gda-sql-parser.h>\n" \
	                --fhead "#include <sql-parser/gda-sql-statement.h>\n" \
	                --fhead "#include <glib-object.h>" \
                        --fprod "\n/* enumerations from \"@filename@\" */" \
			--vhead "GType\n@enum_name@_get_type (void)\n{\n  static GType etype = 0;\n  if (etype == 0) {\n    static const G@Type@Value values[] = {" 	\
			--vprod "      { @VALUENAME@, \"@VALUENAME@\", \"@valuenick@\" }," \
			--vtail "      { 0, NULL, NULL }\n    };\n    etype = g_@type@_register_static (\"@EnumName@\", values);\n  }\n  return etype;\n}\n" \
		$(libgda_sql_parser_headers)) > tmp-gda-enum-types.c \
	&& (cmp -s tmp-gda-enum-types.c gda-sql-parser-enum-types.c || cp tmp-gda-enum-types.c gda-sql-parser-enum-types.c ) \
	&& rm -f tmp-gda-enum-types.c \
	&& cat $(srcdir)/gda-sql-parser-enum-types.c.KEEPAPI >> gda-sql-parser-enum-types.c \
	&& echo timestamp > $(@F)

# Generate the enums source code, with glib-mkenums:
# This is based on the same Makefile.am stuff in pango:
libgda_sql_parser_built_headers = gda-sql-parser-enum-types.h
libgda_sql_parser_built_cfiles = gda-sql-parser-enum-types.c

$(OBJECTS) $(libgda_sql_parser_4_0_la_OBJECTS): token_types.h
libgda_sql_parserincludedir=$(includedir)/libgda-$(GDA_ABI_MAJOR_VERSION).$(GDA_ABI_MINOR_VERSION)/libgda/sql-parser
libgda_sql_parserinclude_HEADERS=$(libgda_sql_parser_headers) $(libgda_sql_parser_built_headers)

libgda_sql_parser_4_0_la_SOURCES = \
	$(libgda_sql_parser_headers) \
	$(libgda_sql_parser_built_headers) \
	$(libgda_sql_parser_built_cfiles) \
	gda-sql-parser-private.h \
	parser.c \
        parser.h \
	delimiter.c \
	delimiter.h \
	token_types.h \
        gda-sql-parser.c \
        gda-statement-struct.c \
	gda-statement-struct-compound.c \
        gda-statement-struct-delete.c \
        gda-statement-struct-update.c \
        gda-statement-struct-insert.c \
        gda-statement-struct-parts.c \
        gda-statement-struct-pspec.c \
        gda-statement-struct-select.c \
        gda-statement-struct-trans.c \
        gda-statement-struct-unknown.c \
        gda-statement-struct-util.c

EXTRA_DIST= parser.y delimiter.y lemon.c lempar.c gen_def.c parser_tokens.h \
	gda-sql-parser-enum-types.c.KEEPAPI gda-sql-parser-enum-types.h.KEEPAPI

CLEANFILES = parser.h parser.c parser.out delimiter.h delimiter.c delimiter.out token_types.h \
	lemon$(EXEEXT_FOR_BUILD) gen_def$(EXEEXT_FOR_BUILD) \
	$(libgda_sql_parser_built_headers) $(libgda_sql_parser_built_cfiles) \
	gda-enum-types.h \
	s-enum-types-h \
	gda-enum-types.c \
	s-enum-types-c