summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAkim Demaille <akim@epita.fr>2002-09-13 16:12:21 +0000
committerAkim Demaille <akim@epita.fr>2002-09-13 16:12:21 +0000
commitb906441c9568615be3ddce717a6e365b2e368af3 (patch)
treea02f1b0260f98088c59da0ca42ad5dc31180ffba
parentbd7018115a82071562c11d30fc4fc699a079f12e (diff)
downloadbison-b906441c9568615be3ddce717a6e365b2e368af3.tar.gz
Playing with autoscan.
* src/reader.c (get_merge_function): Use xstrdup, not strdup. * src/files.c (skeleton_find): Remove, unused. * m4/memcmp.m4: New, from the Coreutils 4.5.1. * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Run jm_FUNC_MEMCMP.
-rw-r--r--ChangeLog9
-rw-r--r--m4/Makefile.am2
-rw-r--r--m4/memcmp.m49
-rw-r--r--m4/prereq.m410
-rw-r--r--src/files.c53
-rw-r--r--src/files.h5
-rw-r--r--src/reader.c4
7 files changed, 29 insertions, 63 deletions
diff --git a/ChangeLog b/ChangeLog
index 3b21190f..d14c3b72 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,14 @@
2002-09-13 Akim Demaille <akim@epita.fr>
+ Playing with autoscan.
+
+ * src/reader.c (get_merge_function): Use xstrdup, not strdup.
+ * src/files.c (skeleton_find): Remove, unused.
+ * m4/memcmp.m4: New, from the Coreutils 4.5.1.
+ * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Run jm_FUNC_MEMCMP.
+
+2002-09-13 Akim Demaille <akim@epita.fr>
+
* configure.ac (AM_INIT_AUTOMAKE): Require Automake 1.6.3.
* Makefile.am (AUTOMAKE_OPTIONS): Don't.
diff --git a/m4/Makefile.am b/m4/Makefile.am
index c888b5c4..1bc76778 100644
--- a/m4/Makefile.am
+++ b/m4/Makefile.am
@@ -1,6 +1,6 @@
## Process this file with automake to produce Makefile.in -*-Makefile-*-
EXTRA_DIST = \
dmalloc.m4 error.m4 \
- m4.m4 mbrtowc.m4 mkstemp.m4 \
+ m4.m4 mbrtowc.m4 memcmp.m4 mkstemp.m4 \
prereq.m4 strerror_r.m4 timevar.m4 warning.m4 \
gettext.m4 iconv.m4 lib-ld.m4 lib-link.m4 lib-prefix.m4 progtest.m4
diff --git a/m4/memcmp.m4 b/m4/memcmp.m4
new file mode 100644
index 00000000..1de34093
--- /dev/null
+++ b/m4/memcmp.m4
@@ -0,0 +1,9 @@
+#serial 7
+
+AC_DEFUN([jm_FUNC_MEMCMP],
+[AC_REQUIRE([AC_FUNC_MEMCMP])dnl
+ if test $ac_cv_func_memcmp_working = no; then
+ AC_DEFINE(memcmp, rpl_memcmp,
+ [Define to rpl_memcmp if the replacement function should be used.])
+ fi
+])
diff --git a/m4/prereq.m4 b/m4/prereq.m4
index b29e725b..8b6ef3da 100644
--- a/m4/prereq.m4
+++ b/m4/prereq.m4
@@ -1,7 +1,10 @@
-#serial 26
+#serial 27
-dnl These are the prerequisite macros for files in the lib/
-dnl directories of the fileutils, sh-utils, and textutils packages.
+dnl We use jm_ for non Autoconf macros.
+m4_pattern_forbid([^jm_[ABCDEFGHIJKLMNOPQRSTUVXYZ]])dnl
+
+# These are the prerequisite macros for files in the lib/
+# directories of the coreutils package.
AC_DEFUN([jm_PREREQ],
[
@@ -114,6 +117,7 @@ AC_DEFUN([jm_PREREQ_QUOTEARG],
[
AC_CHECK_FUNCS(isascii iswprint)
jm_FUNC_MBRTOWC
+ jm_FUNC_MEMCMP
AC_CHECK_HEADERS(limits.h stddef.h stdlib.h string.h wchar.h wctype.h)
AC_HEADER_STDC
AC_C_BACKSLASH_A
diff --git a/src/files.c b/src/files.c
index 5073f04f..c4c223d3 100644
--- a/src/files.c
+++ b/src/files.c
@@ -134,59 +134,6 @@ xfclose (FILE *ptr)
return result;
}
-
-
-/*------------------------------------------------------------------.
-| Return the path to the skeleton which locaction might be given in |
-| ENVVAR, otherwise return SKELETON_NAME. |
-`------------------------------------------------------------------*/
-
-const char *
-skeleton_find (const char *envvar, const char *skeleton_name)
-{
- const char *res = getenv (envvar);
-
-#if defined (MSDOS) || defined (_WIN32)
- const char *cp = getenv ("INIT");
- if (!res)
- {
- /* Skeleton file name without path */
- const char *skel_name = strrchr (skeleton_name, '/');
- if (!skel_name)
- skel_name = strrchr (skeleton_name, '\\');
- if (!skel_name)
- skel_name = skeleton_name;
- else
- ++skel_name;
-
- /* File doesn't exist in current directory; try in INIT directory. */
- if (cp)
- {
- res = XMALLOC (char, strlen (cp) + strlen (skel_name) + 2);
- sprintf (res, "%s%c%s", cp, '\\', skel_name);
- }
- else if (access (skel_name, 4) == 0) /* Look in current dir. */
- res = skel_name;
- else
- {
- /* Look in program locations dir. */
- extern char *program_name;
- cp = strrchr(program_name, '\\');
- if (!cp)
- return skeleton_name;
- else
- ++cp;
- res = XMALLOC (char, cp - program_name + strlen (skel_name) + 1);
- strncpy (res, program_name, cp - program_name);
- strcpy (res + (cp - program_name), skel_name);
- }
- }
-#endif /* defined (MSDOS) || defined (_WIN32) */
- if (!res)
- res = skeleton_name;
-
- return res;
-}
/*----------------------------------------------------------------.
diff --git a/src/files.h b/src/files.h
index 0529b215..0e3d7773 100644
--- a/src/files.h
+++ b/src/files.h
@@ -1,5 +1,5 @@
/* File names and variables for bison,
- Copyright 1984, 1989, 2000, 2001, 2002 Free Software Foundation, Inc.
+ Copyright (C) 1984, 1989, 2000, 2001, 2002 Free Software Foundation, Inc.
This file is part of Bison, the GNU Compiler Compiler.
@@ -57,9 +57,6 @@ void compute_output_file_names PARAMS((void));
FILE *xfopen PARAMS ((const char *name, const char *mode));
int xfclose PARAMS ((FILE *ptr));
-const char *skeleton_find PARAMS ((const char *envvar,
- const char *skeleton_name));
-
/* Is SUFFIX ending STRING? */
int strsuffix (const char* string, const char* suffix);
diff --git a/src/reader.c b/src/reader.c
index 25877c18..d7527158 100644
--- a/src/reader.c
+++ b/src/reader.c
@@ -132,8 +132,8 @@ get_merge_function (const char* name, const char* type,
if (syms->next == NULL)
{
syms->next = XMALLOC (merger_list, 1);
- syms->next->name = strdup (name);
- syms->next->type = strdup (type);
+ syms->next->name = xstrdup (name);
+ syms->next->type = xstrdup (type);
syms->next->next = NULL;
merge_functions = head.next;
}