1/* Licensed to the Apache Software Foundation (ASF) under one or more 2 * contributor license agreements. See the NOTICE file distributed with 3 * this work for additional information regarding copyright ownership. 4 * The ASF licenses this file to You under the Apache License, Version 2.0 5 * (the "License"); you may not use this file except in compliance with 6 * the License. You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17#ifndef APU_VERSION_H 18#define APU_VERSION_H 19 20/** 21 * @file apu_version.h 22 * @brief APR-util Versioning Interface 23 * 24 * APR-util's Version 25 * 26 * There are several different mechanisms for accessing the version. There 27 * is a string form, and a set of numbers; in addition, there are constants 28 * which can be compiled into your application, and you can query the library 29 * being used for its actual version. 30 * 31 * Note that it is possible for an application to detect that it has been 32 * compiled against a different version of APU by use of the compile-time 33 * constants and the use of the run-time query function. 34 * 35 * APU version numbering follows the guidelines specified in: 36 * 37 * http://apr.apache.org/versioning.html 38 */ 39 40
|
41#define APU_COPYRIGHT "Copyright (c) 2013 The Apache Software " \
|
41#define APU_COPYRIGHT "Copyright (c) 2000-2014 The Apache Software " \ |
42 "Foundation or its licensors, as applicable." 43 44/* The numeric compile-time version constants. These constants are the 45 * authoritative version numbers for APU. 46 */ 47 48/** major version 49 * Major API changes that could cause compatibility problems for older 50 * programs such as structure size changes. No binary compatibility is 51 * possible across a change in the major version. 52 */ 53#define APU_MAJOR_VERSION 1 54 55/** minor version 56 * Minor API changes that do not cause binary compatibility problems. 57 * Reset to 0 when upgrading APU_MAJOR_VERSION 58 */ 59#define APU_MINOR_VERSION 5 60 61/** patch level 62 * The Patch Level never includes API changes, simply bug fixes. 63 * Reset to 0 when upgrading APR_MINOR_VERSION 64 */
|
65#define APU_PATCH_VERSION 3
|
65#define APU_PATCH_VERSION 4 |
66 67/** 68 * The symbol APU_IS_DEV_VERSION is only defined for internal, 69 * "development" copies of APU. It is undefined for released versions 70 * of APU. 71 */ 72/* #define APU_IS_DEV_VERSION */ 73 74 75#if defined(APU_IS_DEV_VERSION) || defined(DOXYGEN) 76/** Internal: string form of the "is dev" flag */ 77#ifndef APU_IS_DEV_STRING 78#define APU_IS_DEV_STRING "-dev" 79#endif 80#else 81#define APU_IS_DEV_STRING "" 82#endif 83 84 85#ifndef APU_STRINGIFY 86/** Properly quote a value as a string in the C preprocessor */ 87#define APU_STRINGIFY(n) APU_STRINGIFY_HELPER(n) 88/** Helper macro for APU_STRINGIFY */ 89#define APU_STRINGIFY_HELPER(n) #n 90#endif 91 92/** The formatted string of APU's version */ 93#define APU_VERSION_STRING \ 94 APU_STRINGIFY(APU_MAJOR_VERSION) "." \ 95 APU_STRINGIFY(APU_MINOR_VERSION) "." \ 96 APU_STRINGIFY(APU_PATCH_VERSION) \ 97 APU_IS_DEV_STRING 98 99/** An alternative formatted string of APR's version */ 100/* macro for Win32 .rc files using numeric csv representation */ 101#define APU_VERSION_STRING_CSV APU_MAJOR_VERSION ##, \ 102 ##APU_MINOR_VERSION ##, \ 103 ##APU_PATCH_VERSION 104 105 106#ifndef APU_VERSION_ONLY 107 108/* The C language API to access the version at run time, 109 * as opposed to compile time. APU_VERSION_ONLY may be defined 110 * externally when preprocessing apr_version.h to obtain strictly 111 * the C Preprocessor macro declarations. 112 */ 113 114#include "apr_version.h" 115 116#include "apu.h" 117 118#ifdef __cplusplus 119extern "C" { 120#endif 121 122/** 123 * Return APR-util's version information information in a numeric form. 124 * 125 * @param pvsn Pointer to a version structure for returning the version 126 * information. 127 */ 128APU_DECLARE(void) apu_version(apr_version_t *pvsn); 129 130/** Return APU's version information as a string. */ 131APU_DECLARE(const char *) apu_version_string(void); 132 133#ifdef __cplusplus 134} 135#endif 136 137#endif /* ndef APU_VERSION_ONLY */ 138 139#endif /* ndef APU_VERSION_H */
|