/usr/include/dar/compile_time_features.hpp is in libdar-dev 2.5.14+bis-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 | /*********************************************************************/
// dar - disk archive - a backup/restoration program
// Copyright (C) 2002-2052 Denis Corbin
//
// This program is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License
// as published by the Free Software Foundation; either version 2
// of the License, or (at your option) any later version.
//
// This program 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 General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
//
// to contact the author : http://dar.linux.free.fr/email.html
/*********************************************************************/
/// \file compile_time_features.hpp
/// \brief nested namespace containing routines that give features activated at compile time
/// \ingroup API
#ifndef COMPILE_TIME_FEATURES_HPP
#define COMPILE_TIME_FEATURES_HPP
#include "/usr/include/dar/libdar_my_config.h"
/// \addtogroup API
/// @{
namespace libdar
{
/// nested namespace inside libdar
/// it contains one routine per feature that can be activated or disabled at compile time
/// this is to replace the "libdar::get_compile_time_feature" function
/// that cannot be updates without breaking backward compatibility
namespace compile_time
{
/// returns whether EA support has been activated at compilation time
bool ea();
/// returns whether largefile (>2GiB) support has been activated at compilation time
bool largefile();
/// returns whether nodump flag support has been activated at compilation time
bool nodump();
/// returns whether special allocation support has been activated at compilation time
///
/// special allocation support brings from a tiny to an important improvement in
/// execution time, depending on the number of small files involved in the operation
bool special_alloc();
/// returns the internal integer type used
/// \note zero is returned if infinint type is used
U_I bits();
/// returns whether the current libdar is thread safe
bool thread_safe();
/// returns whether libdar is dependent on libz and if so has gzip compression/decompression available
bool libz();
/// returns whether libdar is dependent on libbz2 and if so has bzip2 compression/decompression available
bool libbz2();
/// returns whether libdar is dependent on liblzo and if so has lzo compression/decompression available
bool liblzo();
/// returns whether libdar is dependent on liblxz/liblzma and if so has xz compression/decompression available
bool libxz();
/// returns whether libdar is dependent on libgcrypt and if so has strong encryption and hashing features available
bool libgcrypt();
/// returns whether libdar can support furtive read mode when run by privileged user
bool furtive_read();
/// type used to return the endian nature of the current system
enum endian
{
big = 'B', //< big endian
little = 'L', //< little endian
error = 'E' //< neither big nor little endian! (libdar cannot run on such system)
};
/// returns the detected integer endian of the system
endian system_endian();
/// returns true if libdar has support for posix_fadvise activated available
bool posix_fadvise();
/// returns whether libdar has been built with speed optimization for last directory
bool fast_dir();
/// returns whether libdar has been built with support for linux ext2/3/4 FSA
bool FSA_linux_extX();
/// returns whether libdar has been built with support for HFS+ FSA
bool FSA_birthtime();
/// returns whether libdar is able to read timestamps at a microsecond accuracy
bool microsecond_read();
/// returns whether libdar is able to write timestamps at a microsecond accuracy
bool microsecond_write();
/// returns whether libdar is able to restore dates of symlinks
bool symlink_restore_dates();
/// returns whether public key cipher (relying on gpgme) are available
bool public_key_cipher();
/// returns whether libthreadar linking will be done, allowing libdar to span several threads
bool libthreadar();
}
} // end of namespace
/// @}
#endif
|