[svn-commits] kpfleming: branch 1.4 r44390 - in /branches/1.4: include/asterisk.h main/utils.c

svn-commits at lists.digium.com svn-commits at lists.digium.com
Wed Oct 4 14:04:22 MST 2006


Author: kpfleming
Date: Wed Oct  4 16:04:21 2006
New Revision: 44390

URL: http://svn.digium.com/view/asterisk?rev=44390&view=rev
Log:
make LOW_MEMORY builds actually work

Modified:
    branches/1.4/include/asterisk.h
    branches/1.4/main/utils.c

Modified: branches/1.4/include/asterisk.h
URL: http://svn.digium.com/view/asterisk/branches/1.4/include/asterisk.h?rev=44390&r1=44389&r2=44390&view=diff
==============================================================================
--- branches/1.4/include/asterisk.h (original)
+++ branches/1.4/include/asterisk.h Wed Oct  4 16:04:21 2006
@@ -101,6 +101,7 @@
  */
 void ast_unregister_atexit(void (*func)(void));
 
+#if !defined(LOW_MEMORY)
 /*!
  * \brief Register the version of a source code file with the core.
  * \param file the source file name
@@ -123,6 +124,56 @@
  */
 void ast_unregister_file_version(const char *file);
 
+/*!
+ * \brief Register/unregister a source code file with the core.
+ * \param file the source file name
+ * \param version the version string (typically a CVS revision keyword string)
+ *
+ * This macro will place a file-scope constructor and destructor into the
+ * source of the module using it; this will cause the version of this file
+ * to registered with the Asterisk core (and unregistered) at the appropriate
+ * times.
+ *
+ * Example:
+ *
+ * \code
+ * ASTERISK_FILE_VERSION(__FILE__, "\$Revision\$")
+ * \endcode
+ *
+ * \note The dollar signs above have been protected with backslashes to keep
+ * CVS from modifying them in this file; under normal circumstances they would
+ * not be present and CVS would expand the Revision keyword into the file's
+ * revision number.
+ */
+#ifdef MTX_PROFILE
+#define	HAVE_MTX_PROFILE	/* used in lock.h */
+#define ASTERISK_FILE_VERSION(file, version) \
+	static int mtx_prof = -1;       /* profile mutex */	\
+	static void __attribute__((constructor)) __register_file_version(void) \
+	{ \
+		mtx_prof = ast_add_profile("mtx_lock_" file, 0);	\
+		ast_register_file_version(file, version); \
+	} \
+	static void __attribute__((destructor)) __unregister_file_version(void) \
+	{ \
+		ast_unregister_file_version(file); \
+	}
+#else /* !MTX_PROFILE */
+#define ASTERISK_FILE_VERSION(file, version) \
+	static void __attribute__((constructor)) __register_file_version(void) \
+	{ \
+		ast_register_file_version(file, version); \
+	} \
+	static void __attribute__((destructor)) __unregister_file_version(void) \
+	{ \
+		ast_unregister_file_version(file); \
+	}
+#endif /* !MTX_PROFILE */
+#else /* LOW_MEMORY */
+#define ASTERISK_FILE_VERSION(file, x)
+#endif /* LOW_MEMORY */
+
+#if !defined(LOW_MEMORY)
 /*!
  * \brief support for event profiling
  *
@@ -141,57 +192,10 @@
 int ast_add_profile(const char *, uint64_t scale);
 int64_t ast_profile(int, int64_t);
 int64_t ast_mark(int, int start1_stop0);
-
-/*!
- * \brief Register/unregister a source code file with the core.
- * \param file the source file name
- * \param version the version string (typically a CVS revision keyword string)
- *
- * This macro will place a file-scope constructor and destructor into the
- * source of the module using it; this will cause the version of this file
- * to registered with the Asterisk core (and unregistered) at the appropriate
- * times.
- *
- * Example:
- *
- * \code
- * ASTERISK_FILE_VERSION(__FILE__, "\$Revision\$")
- * \endcode
- *
- * \note The dollar signs above have been protected with backslashes to keep
- * CVS from modifying them in this file; under normal circumstances they would
- * not be present and CVS would expand the Revision keyword into the file's
- * revision number.
- */
-#if defined(__GNUC__) && !defined(LOW_MEMORY)
-#ifdef MTX_PROFILE
-#define	HAVE_MTX_PROFILE	/* used in lock.h */
-#define ASTERISK_FILE_VERSION(file, version) \
-	static int mtx_prof = -1;       /* profile mutex */	\
-	static void __attribute__((constructor)) __register_file_version(void) \
-	{ \
-		mtx_prof = ast_add_profile("mtx_lock_" file, 0);	\
-		ast_register_file_version(file, version); \
-	} \
-	static void __attribute__((destructor)) __unregister_file_version(void) \
-	{ \
-		ast_unregister_file_version(file); \
-	}
-#else
-#define ASTERISK_FILE_VERSION(file, version) \
-	static void __attribute__((constructor)) __register_file_version(void) \
-	{ \
-		ast_register_file_version(file, version); \
-	} \
-	static void __attribute__((destructor)) __unregister_file_version(void) \
-	{ \
-		ast_unregister_file_version(file); \
-	}
-#endif
-#elif !defined(LOW_MEMORY) /* ! __GNUC__  && ! LOW_MEMORY*/
-#define ASTERISK_FILE_VERSION(file, x) static const char __file_version[] = x;
 #else /* LOW_MEMORY */
-#define ASTERISK_FILE_VERSION(file, x)
-#endif /* __GNUC__ */
+#define ast_add_profile(a, b) 0
+#define ast_profile(a, b) do { } while (0)
+#define ast_mark(a, b) do { } while (0)
+#endif /* LOW_MEMORY */
 
 #endif /* _ASTERISK_H */

Modified: branches/1.4/main/utils.c
URL: http://svn.digium.com/view/asterisk/branches/1.4/main/utils.c?rev=44390&r1=44389&r2=44390&view=diff
==============================================================================
--- branches/1.4/main/utils.c (original)
+++ branches/1.4/main/utils.c Wed Oct  4 16:04:21 2006
@@ -509,6 +509,7 @@
 #undef pthread_create /* For ast_pthread_create function only */
 #endif /* !__linux__ */
 
+#if !defined(LOW_MEMORY)
 /*
  * support for 'show threads'. The start routine is wrapped by
  * dummy_start(), so that ast_register_thread() and
@@ -546,11 +547,15 @@
 	return ret;
 }
 
+#endif /* !LOW_MEMORY */
+
 int ast_pthread_create_stack(pthread_t *thread, pthread_attr_t *attr, void *(*start_routine)(void *),
 			     void *data, size_t stacksize, const char *file, const char *caller,
 			     int line, const char *start_fn)
 {
+#if !defined(LOW_MEMORY)
 	struct thr_arg *a;
+#endif
 
 	if (!attr) {
 		attr = alloca(sizeof(*attr));
@@ -575,6 +580,7 @@
 	if ((errno = pthread_attr_setstacksize(attr, stacksize ? stacksize : AST_STACKSIZE)))
 		ast_log(LOG_WARNING, "pthread_attr_setstacksize: %s\n", strerror(errno));
 
+#if !defined(LOW_MEMORY)
 	if ((a = ast_malloc(sizeof(*a)))) {
 		a->start_routine = start_routine;
 		a->data = data;
@@ -583,6 +589,7 @@
 			 start_fn, line, file, caller);
 		data = a;
 	}
+#endif /* !LOW_MEMORY */
 
 	return pthread_create(thread, attr, start_routine, data); /* We're in ast_pthread_create, so it's okay */
 }



More information about the svn-commits mailing list