a90ac7ac3637b8eb2f82cb66aef1ed38aac17476
[gedcom-parse.git] / gedcom / Makefile.am
1 ## Process this file with automake to produce Makefile.in
2 # $Id$
3 # $Name$
4
5 SUBDIRS = calendar .
6
7 localedir = $(datadir)/locale
8 INCLUDES = -I $(srcdir)/../intl -I $(srcdir)/../include -I $(srcdir)/calendar \
9            -I $(srcdir)/../utf8 \
10            -DPKGDATADIR=\"$(pkgdatadir)\" -DLOCALEDIR=\"$(localedir)\"
11 YFLAGS   = --debug --defines
12 LFLAGS   = -8
13 CFLAGS   = -O2 -W -Wall -pedantic -Wno-long-long @EXTRA_CFLAGS@
14
15 lib_LTLIBRARIES = libgedcom.la
16 libgedcom_la_SOURCES = lex.gedcom_1byte_.c \
17                        lex.gedcom_hilo_.c \
18                        lex.gedcom_lohi_.c \
19                        lex.gedcom_date_.c \
20                        gedcom.tab.c \
21                        gedcom_date.tab.c \
22                        message.c \
23                        multilex.c \
24                        encoding.c \
25                        interface.c \
26                        date.c \
27                        hash.c \
28                        xref.c \
29                        age.c \
30                        compat.c \
31                        buffer.c \
32                        write.c
33 libgedcom_la_LDFLAGS = -export-dynamic -version-info $(LIBVERSION)
34 libgedcom_la_LIBADD  = calendar/libcalendar.la @INTLLIBS@
35 BUILT_SOURCES = lex.gedcom_1byte_.c \
36                 lex.gedcom_hilo_.c \
37                 lex.gedcom_lohi_.c \
38                 lex.gedcom_date_.c \
39                 gedcom.tab.c \
40                 gedcom.tab.h \
41                 gedcom.tabgen.h \
42                 gedcom_date.tab.c \
43                 gedcom_date.tab.h \
44                 gedcom_date.tabgen.h \
45                 tag_names.h
46 noinst_HEADERS = encoding.h \
47                  gedcom_internal.h \
48                  interface.h \
49                  multilex.h \
50                  date.h \
51                  hash.h \
52                  xref.h \
53                  age.h \
54                  compat.h \
55                  buffer.h \
56                  tag_data.h
57 EXTRA_DIST = gedcom.y \
58              gedcom_date.y \
59              gedcom_1byte.lex \
60              gedcom_hilo.lex \
61              gedcom_lohi.lex \
62              gedcom_date.lex \
63              gedcom_lex_common.c \
64              gedcom.tabgen.h \
65              gedcom_date.tabgen.h \
66              tag_names.h \
67              process_tags
68              $(BUILT_SOURCES)
69
70 include $(top_srcdir)/Makefile.inc
71
72 gedcom.tab.c gedcom.tab.h:      gedcom.y
73         $(YACC) $(YFLAGS) --name-prefix=gedcom_ $<
74
75 gedcom_date.tab.c gedcom_date.tab.h:    gedcom_date.y
76         $(YACC) $(YFLAGS) --name-prefix=gedcom_date_ $<
77
78 lex.gedcom_1byte_.c:    gedcom_1byte.lex
79         $(LEX) $(LFLAGS) -Pgedcom_1byte_ $<
80
81 lex.gedcom_hilo_.c:     gedcom_hilo.lex
82         $(LEX) $(LFLAGS) -Pgedcom_hilo_ $<
83
84 lex.gedcom_lohi_.c:     gedcom_lohi.lex
85         $(LEX) $(LFLAGS) -Pgedcom_lohi_ $<
86
87 lex.gedcom_date_.c:     gedcom_date.lex
88         $(LEX) $(LFLAGS) -Pgedcom_date_ $<
89
90 tag_names.h:    $(srcdir)/gedcom.tabgen.h process_tags
91         srcdir=$(srcdir); export srcdir; \
92         perl $(srcdir)/process_tags
93
94 lex.gedcom_1byte_.c:    gedcom.tabgen.h gedcom_lex_common.c
95 lex.gedcom_hilo_.c:     gedcom.tabgen.h gedcom_lex_common.c
96 lex.gedcom_lohi_.c:     gedcom.tabgen.h gedcom_lex_common.c
97 lex.gedcom_date_.c:     gedcom_date.tabgen.h
98
99 # Lexer test programs
100
101 EXTRA_PROGRAMS = lexer_1byte lexer_hilo lexer_lohi
102 lexer_1byte_SOURCES =
103 lexer_1byte_LDADD = lex.gedcom_1byte_.test.o message.o encoding.o hash.o
104 lexer_hilo_SOURCES =
105 lexer_hilo_LDADD = lex.gedcom_hilo_.test.o message.o encoding.o hash.o
106 lexer_lohi_SOURCES =
107 lexer_lohi_LDADD = lex.gedcom_lohi_.test.o message.o encoding.o hash.o
108
109 lex.gedcom_1byte_.test.o:       lex.gedcom_1byte_.c
110         $(COMPILE) -DLEXER_TEST -c $(CPPFLAGS) $(CFLAGS) $< -o $@
111 lex.gedcom_hilo_.test.o:        lex.gedcom_hilo_.c
112         $(COMPILE) -DLEXER_TEST -c $(CPPFLAGS) $(CFLAGS) $< -o $@
113 lex.gedcom_lohi_.test.o:        lex.gedcom_lohi_.c
114         $(COMPILE) -DLEXER_TEST -c $(CPPFLAGS) $(CFLAGS) $< -o $@
115
116 clean-local:
117         rm -f $(EXTRA_PROGRAMS)