diff --git a/libavutil/Makefile b/libavutil/Makefile index 89708fc0af..9340ee4e23 100644 --- a/libavutil/Makefile +++ b/libavutil/Makefile @@ -31,6 +31,7 @@ HEADERS = adler32.h \ intreadwrite.h \ lfg.h \ log.h \ + macros.h \ mathematics.h \ md5.h \ mem.h \ diff --git a/libavutil/avutil.h b/libavutil/avutil.h index d8f469064a..d6566c1163 100644 --- a/libavutil/avutil.h +++ b/libavutil/avutil.h @@ -145,6 +145,12 @@ * @{ * * @} + * + * @defgroup preproc_misc Preprocessor String Macros + * + * @{ + * + * @} */ @@ -277,6 +283,7 @@ char av_get_picture_type_char(enum AVPictureType pict_type); #include "common.h" #include "error.h" #include "version.h" +#include "macros.h" #include "mathematics.h" #include "rational.h" #include "log.h" diff --git a/libavutil/macros.h b/libavutil/macros.h new file mode 100644 index 0000000000..446532377a --- /dev/null +++ b/libavutil/macros.h @@ -0,0 +1,48 @@ +/* + * This file is part of FFmpeg. + * + * FFmpeg is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * FFmpeg is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with FFmpeg; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + +/** + * @file + * @ingroup lavu + * Utility Preprocessor macros + */ + +#ifndef AVUTIL_MACROS_H +#define AVUTIL_MACROS_H + +/** + * @addtogroup preproc_misc Preprocessor String Macros + * + * String manipulation macros + * + * @{ + */ + +#define AV_STRINGIFY(s) AV_TOSTRING(s) +#define AV_TOSTRING(s) #s + +#define AV_GLUE(a, b) a ## b +#define AV_JOIN(a, b) AV_GLUE(a, b) + +/** + * @} + */ + +#define AV_PRAGMA(s) _Pragma(#s) + +#endif /* AVUTIL_MACROS_H */ diff --git a/libavutil/utils.c b/libavutil/utils.c index 9453c30ce6..4c82503d9c 100644 --- a/libavutil/utils.c +++ b/libavutil/utils.c @@ -17,7 +17,7 @@ */ #include "config.h" -#include "version.h" +#include "avutil.h" #include "avassert.h" #include "samplefmt.h" #include "pixdesc.h" diff --git a/libavutil/version.h b/libavutil/version.h index 446e1f208a..adbe230c85 100644 --- a/libavutil/version.h +++ b/libavutil/version.h @@ -21,26 +21,7 @@ #ifndef AVUTIL_VERSION_H #define AVUTIL_VERSION_H -/** - * @defgroup preproc_misc Preprocessor String Macros - * - * String manipulation macros - * - * @{ - */ - -#define AV_STRINGIFY(s) AV_TOSTRING(s) -#define AV_TOSTRING(s) #s - -#define AV_GLUE(a, b) a ## b -#define AV_JOIN(a, b) AV_GLUE(a, b) - -#define AV_PRAGMA(s) _Pragma(#s) - -/** - * @} - */ - +#include "macros.h" /** * @defgroup version_utils Library Version Macros