Disk ARchive  2.5.4
Full featured and portable backup and archiving tool
compile_time_features.hpp
Go to the documentation of this file.
1 /*********************************************************************/
2 // dar - disk archive - a backup/restoration program
3 // Copyright (C) 2002-2052 Denis Corbin
4 //
5 // This program is free software; you can redistribute it and/or
6 // modify it under the terms of the GNU General Public License
7 // as published by the Free Software Foundation; either version 2
8 // of the License, or (at your option) any later version.
9 //
10 // This program is distributed in the hope that it will be useful,
11 // but WITHOUT ANY WARRANTY; without even the implied warranty of
12 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 // GNU General Public License for more details.
14 //
15 // You should have received a copy of the GNU General Public License
16 // along with this program; if not, write to the Free Software
17 // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 //
19 // to contact the author : http://dar.linux.free.fr/email.html
20 /*********************************************************************/
21 
25 
26 
27 #ifndef COMPILE_TIME_FEATURES_HPP
28 #define COMPILE_TIME_FEATURES_HPP
29 
30 #include "../my_config.h"
31 
32 
35 
36 
37 namespace libdar
38 {
39 
41 
45 
46  namespace compile_time
47  {
49  bool ea();
50 
52  bool largefile();
53 
55  bool nodump();
56 
61  bool special_alloc();
62 
64 
66  U_I bits();
67 
69  bool thread_safe();
70 
72  bool libz();
73 
75  bool libbz2();
76 
78  bool liblzo();
79 
81  bool libxz();
82 
84  bool libgcrypt();
85 
87  bool furtive_read();
88 
90  enum endian
91  {
92  big = 'B', //< big endian
93  little = 'L', //< little endian
94  error = 'E' //< neither big nor little endian! (libdar cannot run on such system)
95  };
96 
99 
101  bool posix_fadvise();
102 
104  bool fast_dir();
105 
107  bool FSA_linux_extX();
108 
110  bool FSA_birthtime();
111 
113  bool microsecond_read();
114 
116  bool microsecond_write();
117 
119  bool symlink_restore_dates();
120 
122  bool public_key_cipher();
123 
125  bool libthreadar();
126 
127 
128  }
129 
130 } // end of namespace
131 
133 
134 
135 #endif
bool furtive_read()
returns whether libdar can support furtive read mode when run by privileged user
bool fast_dir()
returns whether libdar has been built with speed optimization for last directory
bool largefile()
returns whether largefile (>2GiB) support has been activated at compilation time
bool libthreadar()
returns whether libthreadar linking will be done, allowing libdar to span several threads ...
bool ea()
returns whether EA support has been activated at compilation time
bool FSA_linux_extX()
returns whether libdar has been built with support for linux ext2/3/4 FSA
bool FSA_birthtime()
returns whether libdar has been built with support for HFS+ FSA
bool libxz()
returns whether libdar is dependent on liblxz/liblzma and if so has xz compression/decompression avai...
bool libz()
returns whether libdar is dependent on libz and if so has gzip compression/decompression available ...
bool libgcrypt()
returns whether libdar is dependent on libgcrypt and if so has strong encryption and hashing features...
bool liblzo()
returns whether libdar is dependent on liblzo and if so has lzo compression/decompression available ...
bool posix_fadvise()
returns true if libdar has support for posix_fadvise activated available
bool microsecond_read()
returns whether libdar is able to read timestamps at a microsecond accuracy
bool thread_safe()
returns whether the current libdar is thread safe
U_I bits()
returns the internal integer type used
bool symlink_restore_dates()
returns whether libdar is able to restore dates of symlinks
bool nodump()
returns whether nodump flag support has been activated at compilation time
bool microsecond_write()
returns whether libdar is able to write timestamps at a microsecond accuracy
bool public_key_cipher()
returns whether public key cipher (relying on gpgme) are available
endian system_endian()
returns the detected integer endian of the system
endian
type used to return the endian nature of the current system
bool libbz2()
returns whether libdar is dependent on libbz2 and if so has bzip2 compression/decompression available...
libdar namespace encapsulate all libdar symbols
Definition: archive.hpp:47