src_loc.h

Go to the documentation of this file.
00001 /* 
00002  * Copyright (C) 2009 iptelorg GmbH
00003  *
00004  * Permission to use, copy, modify, and distribute this software for any
00005  * purpose with or without fee is hereby granted, provided that the above
00006  * copyright notice and this permission notice appear in all copies.
00007  *
00008  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
00009  * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
00010  * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
00011  * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
00012  * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
00013  * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
00014  * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
00015  */
00016 
00017 /*
00018  * History:
00019  * --------
00020  *  2009-10-08  initial version (andrei)
00021 */
00022 
00043 #ifndef __src_loc_h
00044 #define __src_loc_h
00045 
00046 
00047 /* C >= 99 has __func__, older gcc versions have __FUNCTION__ */
00048 #ifndef _SRC_FUNCTION_
00049 #       if __STDC_VERSION__ < 199901L
00050 #               if __GNUC__ >= 2
00051 #                       define _SRC_FUNCTION_ __FUNCTION__
00052 #               else
00053 #                       define _SRC_FUNCTION_ ""
00054 #               endif
00055 #       else
00056 #               define _SRC_FUNCTION_ __func__
00057 #       endif /* __STDC_VERSION_ < 199901L */
00058 #endif /* _FUNC_NAME_ */
00059 
00060 
00061 #ifndef _SRC_FILENAME_
00062 #       define _SRC_FILENAME_ __FILE__
00063 #endif /* _SRC_FILENAME_ */
00064 
00065 
00066 #ifndef _SRC_LINE_
00067 #       define _SRC_LINE_ __LINE__
00068 #endif /* _SRC_LINE_ */
00069 
00070 
00071 #ifndef _SRC_MODULE_
00072 #       ifdef MOD_NAME
00073 #               define _SRC_MODULE_ MOD_NAME
00074 #       else
00075 #               define _SRC_MODULE_ "<core>"
00076 #       endif /* MOD_NAME */
00077 #endif /* _SRC_MODULE_ */
00078 
00079 
00080 #ifndef _SRC_LOC_
00081 #       define _SRC_LOC_ _SRC_MODULE_ ": " _SRC_FILENAME_
00082 #endif /*_SRC_LOC_ */
00083 
00084 
00085 #endif /*__src_loc_h*/
00086 
00087 /* vi: set ts=4 sw=4 tw=79:ai:cindent: */