Disk ARchive  2.4.15
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules
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 libgcrypt();
82 
84  bool furtive_read();
85 
87  enum endian
88  {
89  big = 'B', //< big endian
90  little = 'L', //< little endian
91  error = 'E' //< neither big nor little endian! (libdar cannot run on such system)
92  };
93 
96 
97 
99  bool fast_dir();
100  }
101 
102 } // end of namespace
103 
105 
106 
107 #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 ea()
returns whether EA support has been activated at compilation time
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 ...
endian
type used to return the endian nature of the current system
bool thread_safe()
returns whether the current libdar is thread safe
U_I bits()
returns the internal integer type used
bool nodump()
returns whether nodump flag support has been activated at compilation time
endian system_endian()
returns the detected integer endian of the 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:43