summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRobert Schwebel <r.schwebel@pengutronix.de>2011-06-03 11:12:34 +0000
committerRobert Schwebel <r.schwebel@pengutronix.de>2011-06-03 11:12:34 +0000
commit8c893f4534510ae0a9364cfbd7c8cac3a7bf91af (patch)
tree73c18e4e0e4575c48a1668e7df93fc6dfba3a811
parent7083f4f8c6e62ada2316a853964d85de586dda86 (diff)
downloadmemedit-8c893f4534510ae0a9364cfbd7c8cac3a7bf91af.tar.gz
memedit-8c893f4534510ae0a9364cfbd7c8cac3a7bf91af.tar.xz
configure: more options
Check for genparse before using it, add more warnings. Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
-rw-r--r--Makefile.am2
-rw-r--r--configure.ac11
-rw-r--r--memedit.c22
3 files changed, 22 insertions, 13 deletions
diff --git a/Makefile.am b/Makefile.am
index e4a0981..269a24c 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -12,7 +12,7 @@ man_MANS = memedit.1
# only needed to recompile the commandlineparser
memedit_parser.c memedit_parser.h: memedit_parser.gp
- genparse -o memedit_parser memedit_parser.gp
+ $(GENPARSE) -o memedit_parser memedit_parser.gp
y.tab.c y.tab.h: memedit.y
$(YACC) -d $<
diff --git a/configure.ac b/configure.ac
index 6282c69..e17de3e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,10 +1,13 @@
AC_PREREQ(2.57)
AC_INIT(memedit, 0.8, kernel@pengutronix.de)
-AM_INIT_AUTOMAKE([foreign -Wall])
+AM_INIT_AUTOMAKE([foreign -Wall no-exeext dist-bzip2])
AC_CONFIG_SRCDIR([memedit.c])
AC_CONFIG_HEADER([config.h])
AC_CONFIG_MACRO_DIR([m4])
+AM_MAINTAINER_MODE
+AM_SILENT_RULES
+
# Checks for programs.
AC_CANONICAL_BUILD
AC_CANONICAL_HOST
@@ -19,6 +22,12 @@ if test "$LEX" != flex; then
fi
AC_PROG_YACC
+dnl Check for genparse
+AC_PATH_PROGS(GENPARSE, genparse,, $PATH)
+if test -z "$GENPARSE"; then
+ AC_MSG_ERROR([genparse could not be found, please install the genparse package])
+fi
+
# Checks for libraries.
#
diff --git a/memedit.c b/memedit.c
index 4df2d9c..c88a67c 100644
--- a/memedit.c
+++ b/memedit.c
@@ -27,43 +27,43 @@ void *mem = NULL;
int main (int argc, char *argv[])
{
- struct arg_t *kom_arg;
+ struct arg_t kom_arg;
- kom_arg = Cmdline (argc, argv);
+ Cmdline (&kom_arg, argc, argv);
printf("\nmemedit - quick change of memory content\n");
printf("Copyright (C) 2004-2011 by Pengutronix (kernel@pengutronix.de)\n");
printf("Please enter 'help' for a list of commands. \n\n");
- if (kom_arg->v)
+ if (kom_arg.v)
{
printf ("%s: version %s\n", argv[0], PACKAGE_VERSION);
return EXIT_FAILURE;
}
- debug = kom_arg->V;
+ debug = kom_arg.V;
- if (kom_arg->s)
+ if (kom_arg.s)
{
- rl_instream = fopen(kom_arg->s,"r");
+ rl_instream = fopen(kom_arg.s,"r");
if(rl_instream) {
- printf("parsing %s\n",kom_arg->s);
+ printf("parsing %s\n",kom_arg.s);
yyparse ();
} else {
printf ("opening \"%s\" failed\n%s\n",
- kom_arg->s, strerror(errno));
+ kom_arg.s, strerror(errno));
}
}
- if (kom_arg->optind)
+ if (kom_arg.optind)
{
if(fd > 0) {
printf("file already opened - ignoring command line\n");
} else {
- fd = open(argv[kom_arg->optind], O_RDWR | O_SYNC);
+ fd = open(argv[kom_arg.optind], O_RDWR | O_SYNC);
if (fd<0)
printf ("opening \"%s\" failed\n%s\n",
- argv[kom_arg->optind], strerror(errno));
+ argv[kom_arg.optind], strerror(errno));
}
}