summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Jennings <mej@kainx.org>2005-03-07 22:29:08 +0000
committerMichael Jennings <mej@kainx.org>2005-03-07 22:29:08 +0000
commitc975fd8091157fcb4efc9476a3e15350a113dfb3 (patch)
tree304b9e921f5538034da295ea702dc10d9bb81495
parent9700be01acf936c7f0be2135000759b3a2223803 (diff)
downloadlibast-c975fd8091157fcb4efc9476a3e15350a113dfb3.tar.gz
Mon Mar 7 17:28:00 2005 Michael Jennings (mej)
Cleaner "make maintainer-clean" Finally found and fixed that stupid "Config file is designed for a newer version of FOO" bullshit warning. ---------------------------------------------------------------------- SVN revision: 13656
-rw-r--r--ChangeLog7
-rw-r--r--Makefile.am2
-rw-r--r--include/Makefile.am1
-rw-r--r--include/libast/Makefile.am1
-rw-r--r--src/Makefile.am1
-rw-r--r--src/conf.c4
-rw-r--r--src/strings.c28
-rw-r--r--test/Makefile.am1
8 files changed, 38 insertions, 7 deletions
diff --git a/ChangeLog b/ChangeLog
index 525a6e4..31550bf 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -734,3 +734,10 @@ Mon Mar 7 15:06:39 2005 Michael Jennings (mej)
Miscellaneous autoFUCKMEUPTHEASSWITHAPINETREE fixes.
----------------------------------------------------------------------
+Mon Mar 7 17:28:00 2005 Michael Jennings (mej)
+
+Cleaner "make maintainer-clean"
+
+Finally found and fixed that stupid "Config file is designed for a
+newer version of FOO" bullshit warning.
+----------------------------------------------------------------------
diff --git a/Makefile.am b/Makefile.am
index 8fc3561..77e8db4 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -9,6 +9,8 @@ MACROS = libast.m4
macrodir = $(datadir)/aclocal
EXTRA_DIST = DESIGN README $(MACROS)
+MAINTAINERCLEANFILES = Makefile.in *~ aclocal.m4 config.guess config.sub configure depcomp \
+ install-sh ltconfig ltmain.sh missing mkinstalldirs stamp-h* *.log config.h.in
test: all
cd test && $(MAKE) test
diff --git a/include/Makefile.am b/include/Makefile.am
index 6af8d37..efc96d6 100644
--- a/include/Makefile.am
+++ b/include/Makefile.am
@@ -5,3 +5,4 @@ SUBDIRS = $(PACKAGE)
include_HEADERS = libast.h
EXTRA_DIST = libast_internal.h
+MAINTAINERCLEANFILES = Makefile.in
diff --git a/include/libast/Makefile.am b/include/libast/Makefile.am
index f5b82f4..5487746 100644
--- a/include/libast/Makefile.am
+++ b/include/libast/Makefile.am
@@ -22,3 +22,4 @@ types.h: types.h.in
sysdefs.h: sysdefs.h.in
(cd $(top_srcdir) && ./config.status)
+MAINTAINERCLEANFILES = Makefile.in
diff --git a/src/Makefile.am b/src/Makefile.am
index bef017c..f27ce76 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -10,3 +10,4 @@ libast_la_SOURCES = \
regexp.c socket.c str.c strings.c snprintf.c tok.c url.c
libast_la_LDFLAGS = -version-info 2:1:0
+MAINTAINERCLEANFILES = Makefile.in
diff --git a/src/conf.c b/src/conf.c
index f2915d9..b86ba7b 100644
--- a/src/conf.c
+++ b/src/conf.c
@@ -827,10 +827,12 @@ spifconf_open_file(spif_charptr_t name)
/* Check version number against current application version. */
begin_ptr = SPIF_STR_STR(ver_str) + spif_str_index(ver_str, SPIF_CAST(char) '-') + 1;
end_ptr = SPIF_STR_STR(ver_str) + spif_str_index(ver_str, SPIF_CAST(char) '>');
+ D_CONF(("Begin pointer is %10p (%s), end pointer is %10p (%s), length is %d, buffer size is %d\n",
+ begin_ptr, begin_ptr, end_ptr, end_ptr, SPIF_CAST_C(int) (end_ptr - begin_ptr), sizeof(buff)));
if (SPIF_PTR_ISNULL(end_ptr)) {
spiftool_safe_strncpy(buff, begin_ptr, sizeof(buff));
} else {
- testlen = MAX(SPIF_CAST_C(int) sizeof(buff), SPIF_CAST_C(int) (end_ptr - begin_ptr));
+ testlen = MIN(SPIF_CAST_C(int) sizeof(buff), SPIF_CAST_C(int) (end_ptr - begin_ptr + 1));
spiftool_safe_strncpy(buff, begin_ptr, testlen);
}
ver = spiftool_version_compare(buff, libast_program_version);
diff --git a/src/strings.c b/src/strings.c
index c4b0410..a4bdd9d 100644
--- a/src/strings.c
+++ b/src/strings.c
@@ -710,21 +710,24 @@ spiftool_version_compare(spif_charptr_t v1, spif_charptr_t v2)
{
spif_char_t buff1[128], buff2[128];
+ D_CONF(("Comparing version strings \"%s\" and \"%s\"\n", NONULL(v1), NONULL(v2)));
SPIF_COMP_CHECK_NULL(v1, v2);
for (; *v1 && *v2; ) {
+ D_CONF((" -> Looking at \"%s\" and \"%s\"\n", v1, v2));
if (isalpha(*v1) && isalpha(*v2)) {
spif_charptr_t p1 = buff1, p2 = buff2;
spif_int8_t ival1 = 6, ival2 = 6;
/* Compare words. First, copy each word into buffers. */
- for (; isalpha(*v1); v1++, p1++) *p1 = *v1;
- for (; isalpha(*v2); v2++, p2++) *p2 = *v2;
+ for (; *v1 && isalpha(*v1); v1++, p1++) *p1 = *v1;
+ for (; *v2 && isalpha(*v2); v2++, p2++) *p2 = *v2;
*p1 = *p2 = 0;
/* Change the buffered strings to lowercase for easier comparison. */
spiftool_downcase_str(buff1);
spiftool_downcase_str(buff2);
+ D_CONF((" -> Comparing as words \"%s\" vs. \"%s\"\n", buff1, buff2));
/* Some strings require special handling. */
if (!strcmp(SPIF_CHARPTR_C(buff1), "snap")) {
@@ -751,12 +754,14 @@ spiftool_version_compare(spif_charptr_t v1, spif_charptr_t v2)
}
if (ival1 != ival2) {
/* If the values are different, compare them. */
+ D_CONF((" -> %d\n", (int) SPIF_CMP_FROM_INT(ival1 - ival2)));
return SPIF_CMP_FROM_INT(ival1 - ival2);
} else if (ival1 == 6) {
int c;
/* Two arbitrary strings. Compare them too. */
if ((c = strcmp(SPIF_CHARPTR_C(buff1), SPIF_CHARPTR_C(buff2))) != 0) {
+ D_CONF((" -> %d\n", (int) SPIF_CMP_FROM_INT(c)));
return SPIF_CMP_FROM_INT(c);
}
}
@@ -766,17 +771,19 @@ spiftool_version_compare(spif_charptr_t v1, spif_charptr_t v2)
spif_cmp_t c;
/* Compare numbers. First, copy each number into buffers. */
- for (; isdigit(*v1); v1++, p1++) *p1 = *v1;
- for (; isdigit(*v2); v2++, p2++) *p2 = *v2;
+ for (; *v1 && isdigit(*v1); v1++, p1++) *p1 = *v1;
+ for (; *v2 && isdigit(*v2); v2++, p2++) *p2 = *v2;
*p1 = *p2 = 0;
/* Convert the strings into actual integers. */
ival1 = SPIF_CAST(int32) strtol(SPIF_CHARPTR_C(buff1), (char **) NULL, 10);
ival2 = SPIF_CAST(int32) strtol(SPIF_CHARPTR_C(buff2), (char **) NULL, 10);
+ D_CONF((" -> Comparing as integers %d vs. %d\n", SPIF_CAST_C(int) ival1, SPIF_CAST_C(int) ival2));
/* Compare the integers and return if not equal. */
c = SPIF_CMP_FROM_INT(ival1 - ival2);
if (!SPIF_CMP_IS_EQUAL(c)) {
+ D_CONF((" -> %d\n", (int) c));
return c;
}
} else if (!isalnum(*v1) && !isalnum(*v2)) {
@@ -784,15 +791,19 @@ spiftool_version_compare(spif_charptr_t v1, spif_charptr_t v2)
spif_cmp_t c;
/* Compare non-alphanumeric strings. */
- for (; !isalnum(*v1); v1++, p1++) *p1 = *v1;
- for (; !isalnum(*v2); v2++, p2++) *p2 = *v2;
+ for (; *v1 && !isalnum(*v1); v1++, p1++) *p1 = *v1;
+ for (; *v2 && !isalnum(*v2); v2++, p2++) *p2 = *v2;
*p1 = *p2 = 0;
+ D_CONF((" -> Comparing as non-alphanumeric strings \"%s\" vs. \"%s\"\n", buff1, buff2));
c = SPIF_CMP_FROM_INT(strcasecmp(SPIF_CHARPTR_C(buff1), SPIF_CHARPTR_C(buff2)));
if (!SPIF_CMP_IS_EQUAL(c)) {
+ D_CONF((" -> %d\n", (int) c));
return c;
}
} else {
+ D_CONF((" -> Comparing as alphanumeric strings \"%s\" vs. \"%s\"\n", buff1, buff2));
+ D_CONF((" -> %d\n", (int) SPIF_CMP_FROM_INT(strcasecmp(SPIF_CHARPTR_C(buff1), SPIF_CHARPTR_C(buff2)))));
return SPIF_CMP_FROM_INT(strcasecmp(SPIF_CHARPTR_C(buff1), SPIF_CHARPTR_C(buff2)));
}
}
@@ -801,18 +812,23 @@ spiftool_version_compare(spif_charptr_t v1, spif_charptr_t v2)
if (*v1) {
if (!BEG_STRCASECMP(SPIF_CHARPTR_C(v1), "snap") || !BEG_STRCASECMP(SPIF_CHARPTR_C(v1), "pre")
|| !BEG_STRCASECMP(SPIF_CHARPTR_C(v1), "alpha") || !BEG_STRCASECMP(SPIF_CHARPTR_C(v1), "beta")) {
+ D_CONF((" -> <\n"));
return SPIF_CMP_LESS;
} else {
+ D_CONF((" -> >\n"));
return SPIF_CMP_GREATER;
}
} else if (*v2) {
if (!BEG_STRCASECMP(SPIF_CHARPTR_C(v2), "snap") || !BEG_STRCASECMP(SPIF_CHARPTR_C(v2), "pre")
|| !BEG_STRCASECMP(SPIF_CHARPTR_C(v2), "alpha") || !BEG_STRCASECMP(SPIF_CHARPTR_C(v2), "beta")) {
+ D_CONF((" -> >\n"));
return SPIF_CMP_GREATER;
} else {
+ D_CONF((" -> <\n"));
return SPIF_CMP_LESS;
}
}
+ D_CONF((" -> ==\n"));
return SPIF_CMP_EQUAL;
}
diff --git a/test/Makefile.am b/test/Makefile.am
index 1ad7342..77a8044 100644
--- a/test/Makefile.am
+++ b/test/Makefile.am
@@ -21,3 +21,4 @@ perf: libast-perf
$(top_builddir)/test/libast-perf $(PERFOPTS)
.PHONY: test
+MAINTAINERCLEANFILES = Makefile.in