]> git.ozlabs.org Git - petitboot/blobdiff - discover/grub2/Makefile.am
discover/grub2: Hook up flex/bison parser to discover server
[petitboot] / discover / grub2 / Makefile.am
diff --git a/discover/grub2/Makefile.am b/discover/grub2/Makefile.am
new file mode 100644 (file)
index 0000000..71f3282
--- /dev/null
@@ -0,0 +1,48 @@
+#  This program is free software; you can redistribute it and/or modify
+#  it under the terms of the GNU General Public License as published by
+#  the Free Software Foundation; version 2 of the License.
+#
+#  This program is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#  GNU General Public License for more details.
+#
+#  You should have received a copy of the GNU General Public License
+#  along with this program; if not, write to the Free Software
+#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+#
+
+AM_CPPFLAGS = -I$(top_srcdir)/lib -I$(top_srcdir) $(DEFAULT_CPPFLAGS)
+
+AM_CFLAGS = $(DEFAULT_CFLAGS)  \
+       -DPREFIX='"$(prefix)"' \
+       -DPKG_SHARE_DIR='"$(pkgdatadir)"' \
+       -DPKG_SYSCONF_DIR='"$(pkgsysconfdir)"' \
+       -DLOCAL_STATE_DIR='"$(localstatedir)"'
+
+AM_YFLAGS = -d
+
+noinst_PROGRAMS = grub2-parser.ro
+
+grub2-parser.ro$(EXEEXT): $(grub2_parser_ro_OBJECTS)
+       $(LD) -r -o $@ $^
+
+
+grub2_parser_ro_SOURCES = \
+       builtins.c \
+       grub2.h \
+       grub2.c \
+       lexer.l \
+       parser.y \
+       script.c \
+       parser.c
+
+BUILT_SOURCES = parser.h lexer.h
+
+# ylwrap doesn't handle flex header files well; use our own rule here.
+lexer.h lexer.c: lexer.l
+       $(LEX) $(LFLAGS) --header-file=lexer.h -o lexer.c $^
+
+lexer.o: CFLAGS+=-Wno-unused-parameter -Wno-missing-prototypes \
+                      -Wno-missing-declarations
+