summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordaniel <daniel@dani.localdomain.invalid>2009-02-13 14:27:41 +0100
committerLudovic Courtès <ludo@gnu.org>2009-04-05 19:54:25 +0200
commit6ab8238d99f477ee7ac12f1f1a3ec70aab3e68c7 (patch)
tree72d979fcb3d46ffcf2145085942a017b52a81179
parentaa49787b5eb500807e82ce2698651515a7bdc743 (diff)
downloadguile-6ab8238d99f477ee7ac12f1f1a3ec70aab3e68c7.tar.gz
Make `--disable-deprecated' work.
* configure.in (enable_deprecated): Set SCM_WARN_DEPRECATED_DEFAULT even when --disable-deprecated is passed. * libguile/deprecation.h: Declare deprecation-issuing methods even if SCM_ENABLE_DEPRECATED is not set. * libguile/deprecation.c: Ditto. (scm_init_deprecation): Include full body even for unset SCM_ENABLE_DEPRECATED. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
-rw-r--r--configure.in5
-rw-r--r--libguile/deprecation.c6
-rw-r--r--libguile/deprecation.h14
3 files changed, 7 insertions, 18 deletions
diff --git a/configure.in b/configure.in
index 9503fcbcd..2c9c478eb 100644
--- a/configure.in
+++ b/configure.in
@@ -159,6 +159,7 @@ AC_ARG_ENABLE([deprecated],
if test "$enable_deprecated" = no; then
SCM_I_GSC_ENABLE_DEPRECATED=0
+ warn_default=no
else
if test "$enable_deprecated" = yes || test "$enable_deprecated" = ""; then
warn_default=summary
@@ -168,9 +169,9 @@ else
warn_default=$enable_deprecated
fi
SCM_I_GSC_ENABLE_DEPRECATED=1
- AC_DEFINE_UNQUOTED(SCM_WARN_DEPRECATED_DEFAULT, "$warn_default",
- [Define this to control the default warning level for deprecated features.])
fi
+AC_DEFINE_UNQUOTED(SCM_WARN_DEPRECATED_DEFAULT, "$warn_default",
+[Define this to control the default warning level for deprecated features.])
AC_ARG_ENABLE(elisp,
[ --disable-elisp omit Emacs Lisp support],,
diff --git a/libguile/deprecation.c b/libguile/deprecation.c
index 338c47c20..780e246f0 100644
--- a/libguile/deprecation.c
+++ b/libguile/deprecation.c
@@ -41,8 +41,6 @@
-#if (SCM_ENABLE_DEPRECATED == 1)
-
struct issued_warning {
struct issued_warning *prev;
const char *message;
@@ -138,8 +136,6 @@ print_deprecation_summary (void)
}
}
-#endif /* SCM_ENABLE_DEPRECATED == 1 */
-
SCM_DEFINE(scm_include_deprecated_features,
"include-deprecated-features", 0, 0, 0,
(),
@@ -157,7 +153,6 @@ SCM_DEFINE(scm_include_deprecated_features,
void
scm_init_deprecation ()
{
-#if (SCM_ENABLE_DEPRECATED == 1)
const char *level = getenv ("GUILE_WARN_DEPRECATED");
if (level == NULL)
level = SCM_WARN_DEPRECATED_DEFAULT;
@@ -170,7 +165,6 @@ scm_init_deprecation ()
SCM_WARN_DEPRECATED = 0;
atexit (print_deprecation_summary);
}
-#endif
#include "libguile/deprecation.x"
}
diff --git a/libguile/deprecation.h b/libguile/deprecation.h
index 78853277b..9752d9b16 100644
--- a/libguile/deprecation.h
+++ b/libguile/deprecation.h
@@ -3,7 +3,7 @@
#ifndef SCM_DEPRECATION_H
#define SCM_DEPRECATION_H
-/* Copyright (C) 2001, 2006, 2008 Free Software Foundation, Inc.
+/* Copyright (C) 2001, 2006, 2008, 2009 Free Software Foundation, Inc.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
@@ -26,20 +26,14 @@
-#if (SCM_ENABLE_DEPRECATED == 1)
-
-/* These functions are _not_ deprecated, but we exclude them along
- with the really deprecated features to be sure that no-one is
- trying to emit deprecation warnings when libguile is supposed to be
- clean of them.
-*/
+/* These functions are a possibly useful part of the API and not only used
+ internally, thus they are exported always, not depending on
+ SCM_ENABLE_DEPRECATED. */
SCM_API void scm_c_issue_deprecation_warning (const char *msg);
SCM_API void scm_c_issue_deprecation_warning_fmt (const char *msg, ...);
SCM_API SCM scm_issue_deprecation_warning (SCM msgs);
-#endif
-
SCM_API SCM scm_include_deprecated_features (void);
SCM_INTERNAL void scm_init_deprecation (void);