Merge branch 'master' of ssh://cmph.git.sourceforge.net/gitroot/cmph/cmph
Conflicts: INSTALL Makefile.am src/Makefile src/Makefile.in
This commit is contained in:
commit
52e7da2187
@ -7,6 +7,7 @@ AC_CONFIG_MACRO_DIR([m4])
|
|||||||
dnl Checks for programs.
|
dnl Checks for programs.
|
||||||
AC_PROG_AWK
|
AC_PROG_AWK
|
||||||
AC_PROG_CC
|
AC_PROG_CC
|
||||||
|
AC_PROG_CXX
|
||||||
AC_PROG_INSTALL
|
AC_PROG_INSTALL
|
||||||
AC_PROG_LN_S
|
AC_PROG_LN_S
|
||||||
AC_PROG_LIBTOOL
|
AC_PROG_LIBTOOL
|
||||||
@ -36,4 +37,4 @@ dnl Checks for library functions.
|
|||||||
|
|
||||||
AC_CHECK_SPOON
|
AC_CHECK_SPOON
|
||||||
dnl AC_OUTPUT(Makefile tests/Makefile samples/Makefile)
|
dnl AC_OUTPUT(Makefile tests/Makefile samples/Makefile)
|
||||||
AC_OUTPUT(Makefile src/Makefile tests/Makefile examples/Makefile man/Makefile cmph.pc)
|
AC_OUTPUT(Makefile src/Makefile tests/Makefile examples/Makefile man/Makefile cxxmph/Makefile cmph.pc)
|
||||||
|
6
cxxmph/Makefile.am
Normal file
6
cxxmph/Makefile.am
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
bin_PROGRAMS = cmph_hash_map_test
|
||||||
|
|
||||||
|
INCLUDES = -I../src/
|
||||||
|
|
||||||
|
cmph_hash_map_test_LDADD = ../src/libcmph.la
|
||||||
|
cmph_hash_map_test_SOURCES = cmph_hash_map_test.cc
|
159
cxxmph/cmph_hash_map.h
Normal file
159
cxxmph/cmph_hash_map.h
Normal file
@ -0,0 +1,159 @@
|
|||||||
|
#include <hash_map>
|
||||||
|
#include <vector>
|
||||||
|
#include <utility> // for std::pair
|
||||||
|
|
||||||
|
#include <cmph.h>
|
||||||
|
|
||||||
|
// Save on repetitive typing.
|
||||||
|
#define CMPH_TMPL_SPEC template <class Key, class Data, class HashFcn, class EqualKey, class Alloc>
|
||||||
|
#define CMPH_CLASS_SPEC cmph_hash_map<Key, Data, HashFcn, EqualKey, Alloc>
|
||||||
|
#define CMPH_METHOD_DECL(r, m) CMPH_TMPL_SPEC typename CMPH_CLASS_SPEC::r CMPH_CLASS_SPEC::m
|
||||||
|
|
||||||
|
template <class Key, class Data, class HashFcn = __gnu_cxx::hash<Key>, class EqualKey = std::equal_to<Key>, class Alloc = std::allocator<Data> >
|
||||||
|
class cmph_hash_map {
|
||||||
|
public:
|
||||||
|
typedef Key key_type;
|
||||||
|
typedef Data data_type;
|
||||||
|
typedef std::pair<Key, Data> value_type;
|
||||||
|
typedef HashFcn hasher;
|
||||||
|
typedef EqualKey key_equal;
|
||||||
|
|
||||||
|
typedef typename std::vector<value_type>::pointer pointer;
|
||||||
|
typedef typename std::vector<value_type>::reference reference;
|
||||||
|
typedef typename std::vector<value_type>::const_reference const_reference;
|
||||||
|
typedef typename std::vector<value_type>::size_type size_type;
|
||||||
|
typedef typename std::vector<value_type>::difference_type difference_type;
|
||||||
|
typedef typename std::vector<value_type>::iterator iterator;
|
||||||
|
typedef typename std::vector<value_type>::const_iterator const_iterator;
|
||||||
|
|
||||||
|
// For making macros simpler.
|
||||||
|
typedef void void_type;
|
||||||
|
typedef bool bool_type;
|
||||||
|
typedef std::pair<iterator, bool> insert_return_type;
|
||||||
|
|
||||||
|
cmph_hash_map();
|
||||||
|
~cmph_hash_map();
|
||||||
|
|
||||||
|
iterator begin();
|
||||||
|
iterator end();
|
||||||
|
const_iterator begin() const;
|
||||||
|
const_iterator end() const;
|
||||||
|
size_type size() const;
|
||||||
|
bool empty() const;
|
||||||
|
void clear();
|
||||||
|
void erase(iterator pos);
|
||||||
|
void erase(const key_type& k);
|
||||||
|
std::pair<iterator, bool> insert(const value_type& x);
|
||||||
|
iterator find(const key_type& k);
|
||||||
|
const_iterator find(const key_type& k) const;
|
||||||
|
data_type& operator[](const key_type &k);
|
||||||
|
|
||||||
|
void pack() { rehash(); }
|
||||||
|
|
||||||
|
private:
|
||||||
|
void rehash();
|
||||||
|
std::vector<value_type> values_;
|
||||||
|
cmph_t* cmph_;
|
||||||
|
typedef typename __gnu_cxx::hash_map<Key, Data, HashFcn, EqualKey, Alloc> slack_type;
|
||||||
|
slack_type slack_;
|
||||||
|
};
|
||||||
|
|
||||||
|
CMPH_TMPL_SPEC
|
||||||
|
bool operator==(const CMPH_CLASS_SPEC& lhs, const CMPH_CLASS_SPEC& rhs) {
|
||||||
|
return lhs.values_ == rhs.values_;
|
||||||
|
}
|
||||||
|
|
||||||
|
CMPH_TMPL_SPEC CMPH_CLASS_SPEC::cmph_hash_map() : cmph_(NULL) {
|
||||||
|
rehash();
|
||||||
|
}
|
||||||
|
|
||||||
|
CMPH_TMPL_SPEC CMPH_CLASS_SPEC::~cmph_hash_map() {
|
||||||
|
if(cmph_) cmph_destroy(cmph_);
|
||||||
|
}
|
||||||
|
|
||||||
|
CMPH_METHOD_DECL(insert_return_type, insert)(const value_type& x) {
|
||||||
|
iterator it = find(x.first);
|
||||||
|
if (it != end()) return std::make_pair(it, false);
|
||||||
|
values_.push_back(x);
|
||||||
|
slack_.insert(std::make_pair(x.first, values_.size() - 1));
|
||||||
|
if ((slack_.size() > 10 && !cmph_) ||
|
||||||
|
(cmph_ && slack_.size() > cmph_size(cmph_) * 2)) rehash();
|
||||||
|
it = find(x.first);
|
||||||
|
// std::cerr << "inserted " << x.first.i_ << " at " << values_.begin() - it;
|
||||||
|
return std::make_pair(it, true);
|
||||||
|
}
|
||||||
|
|
||||||
|
CMPH_METHOD_DECL(void_type, rehash)() {
|
||||||
|
if (values_.empty()) return;
|
||||||
|
slack_type().swap(slack_);
|
||||||
|
cmph_io_adapter_t* source = cmph_io_struct_vector_adapter(
|
||||||
|
&(values_[0]), sizeof(value_type), 0, sizeof(key_type), values_.size());
|
||||||
|
cmph_config_t* cmph_config = cmph_config_new(source);
|
||||||
|
cmph_config_set_algo(cmph_config, CMPH_CHD);
|
||||||
|
// cmph_config_set_verbosity(cmph_config, 1);
|
||||||
|
if (cmph_) cmph_destroy(cmph_);
|
||||||
|
cmph_ = cmph_new(cmph_config);
|
||||||
|
cmph_config_destroy(cmph_config);
|
||||||
|
cmph_io_struct_vector_adapter_destroy(source);
|
||||||
|
std::vector<value_type> new_values(values_.size());
|
||||||
|
for (int i = 0; i < values_.size(); ++i) {
|
||||||
|
size_type id = cmph_search(cmph_, reinterpret_cast<const char*>(&(values_[i].first)), sizeof(key_type));
|
||||||
|
new_values[id] = values_[i];
|
||||||
|
}
|
||||||
|
values_.swap(new_values);
|
||||||
|
}
|
||||||
|
|
||||||
|
CMPH_METHOD_DECL(iterator, begin)() { return values_.begin(); }
|
||||||
|
CMPH_METHOD_DECL(iterator, end)() { return values_.end(); }
|
||||||
|
CMPH_METHOD_DECL(const_iterator, begin)() const { return values_.begin(); }
|
||||||
|
CMPH_METHOD_DECL(const_iterator, end)() const { return values_.end(); }
|
||||||
|
CMPH_METHOD_DECL(bool_type, empty)() const { return values_.empty(); }
|
||||||
|
|
||||||
|
CMPH_METHOD_DECL(void_type, clear)() {
|
||||||
|
values_.clear();
|
||||||
|
slack_.clear();
|
||||||
|
cmph_destroy(cmph_);
|
||||||
|
cmph_ = NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
CMPH_METHOD_DECL(void_type, erase)(iterator pos) {
|
||||||
|
values_.erase(pos);
|
||||||
|
rehash();
|
||||||
|
}
|
||||||
|
CMPH_METHOD_DECL(void_type, erase)(const key_type& k) {
|
||||||
|
iterator it = find(k);
|
||||||
|
if (it == end()) return;
|
||||||
|
erase(it);
|
||||||
|
}
|
||||||
|
|
||||||
|
CMPH_METHOD_DECL(const_iterator, find)(const key_type& k) const {
|
||||||
|
if (!slack_.empty()) {
|
||||||
|
typename slack_type::const_iterator it = slack_.find(k);
|
||||||
|
if (it != slack_.end()) return values_.begin() + it->second;
|
||||||
|
}
|
||||||
|
if (!cmph_) return end();
|
||||||
|
size_type id = cmph_search(cmph_, reinterpret_cast<const char*>(&k),
|
||||||
|
sizeof(key_type));
|
||||||
|
if (key_equal()(values_[id].first, k)) {
|
||||||
|
return values_.begin() + id;
|
||||||
|
}
|
||||||
|
return end();
|
||||||
|
}
|
||||||
|
CMPH_METHOD_DECL(iterator, find)(const key_type& k) {
|
||||||
|
if (!slack_.empty()) {
|
||||||
|
typename slack_type::const_iterator it = slack_.find(k);
|
||||||
|
if (it != slack_.end()) return values_.begin() + it->second;
|
||||||
|
}
|
||||||
|
if (!cmph_) return end();
|
||||||
|
size_type id = cmph_search(cmph_, reinterpret_cast<const char*>(&k),
|
||||||
|
sizeof(key_type));
|
||||||
|
if (key_equal()(values_[id].first, k)) {
|
||||||
|
return values_.begin() + id;
|
||||||
|
}
|
||||||
|
return end();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
CMPH_METHOD_DECL(data_type&, operator[])(const key_type& k) {
|
||||||
|
return insert(std::make_pair(k, data_type())).first->second;
|
||||||
|
}
|
19
cxxmph/cmph_hash_map_test.cc
Normal file
19
cxxmph/cmph_hash_map_test.cc
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
#include "cmph_hash_map.h"
|
||||||
|
|
||||||
|
#include <iostream>
|
||||||
|
|
||||||
|
int main(int argc, char** argv) {
|
||||||
|
cmph_hash_map<int, int> h;
|
||||||
|
h.insert(std::make_pair(-1,-1));
|
||||||
|
for (cmph_hash_map<int, int>::const_iterator it = h.begin(); it != h.end(); ++it) {
|
||||||
|
std::cout << it->first << " -> " << it->second << std::endl;
|
||||||
|
}
|
||||||
|
std::cout << "Search -1 gives " << h.find(-1)->second << std::endl;
|
||||||
|
for (int i = 0; i < 1000; ++i) h.insert(std::make_pair(i, i));
|
||||||
|
for (int j = 0; j < 1000; ++j) {
|
||||||
|
for (int i = 1000; i > 0; --i) {
|
||||||
|
h.find(i - 1);
|
||||||
|
// std::cout << "Search " << i - 1 << " gives " << h.find(i - 1)->second << std::endl;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
37
cxxmph/mphtable.cc
Normal file
37
cxxmph/mphtable.cc
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
#include <numerical_limits>
|
||||||
|
|
||||||
|
template <int n, int mask = 1 << 7> struct bitcount {
|
||||||
|
enum { value = (n & mask ? 1:0) + bitcount<n, mask >> 1>::value };
|
||||||
|
};
|
||||||
|
template <int n> struct bitcount<n, 0> { enum { value = 0 }; };
|
||||||
|
|
||||||
|
template <int n, int current, int mask = 1 << 8> struct bitposition {
|
||||||
|
enum
|
||||||
|
|
||||||
|
template <int index = 0, typename op> class CompileTimeByteTable {
|
||||||
|
public:
|
||||||
|
CompileTimeByteTable : current(op<index>::value) { }
|
||||||
|
int operator[] (int i) { return *(¤t + i); }
|
||||||
|
private:
|
||||||
|
unsigned char current;
|
||||||
|
CompileTimeByteTable<next> next;
|
||||||
|
};
|
||||||
|
|
||||||
|
static CompileTimeByteTable<256, bitcount> BitcountTable;
|
||||||
|
|
||||||
|
|
||||||
|
#define mix(a,b,c) \
|
||||||
|
{ \
|
||||||
|
a -= b; a -= c; a ^= (c>>13); \
|
||||||
|
b -= c; b -= a; b ^= (a<<8); \
|
||||||
|
c -= a; c -= b; c ^= (b>>13); \
|
||||||
|
a -= b; a -= c; a ^= (c>>12); \
|
||||||
|
b -= c; b -= a; b ^= (a<<16); \
|
||||||
|
c -= a; c -= b; c ^= (b>>5); \
|
||||||
|
a -= b; a -= c; a ^= (c>>3); \
|
||||||
|
b -= c; b -= a; b ^= (a<<10); \
|
||||||
|
c -= a; c -= b; c ^= (b>>15); \
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static const int kMaskStepSelectTable = std::limit<char>::max;
|
299
cxxmph/mphtable.h
Normal file
299
cxxmph/mphtable.h
Normal file
@ -0,0 +1,299 @@
|
|||||||
|
|
||||||
|
template <class Key>
|
||||||
|
class MPHTable {
|
||||||
|
public:
|
||||||
|
typedef Key key_type;
|
||||||
|
|
||||||
|
MPHTable(cmph_t* mphf);
|
||||||
|
~MPHTable();
|
||||||
|
|
||||||
|
template <class Iterator>
|
||||||
|
bool reset(Iterator begin, Iterator end);
|
||||||
|
|
||||||
|
cmph_uint32 index(const key_type& x) const;
|
||||||
|
|
||||||
|
private:
|
||||||
|
MPHTable();
|
||||||
|
cmph_t* mphf;
|
||||||
|
|
||||||
|
// Generates three hash values for k in a single pass.
|
||||||
|
static hash_vector(cmph_uint32 seed, const char* k, cmph_uint32 keylen, cmph_uint32* hashes) ;
|
||||||
|
};
|
||||||
|
|
||||||
|
unsigned int MPHTable::index(const key_type& key) const {
|
||||||
|
cmph_uint32 keylen = sizeof(key);
|
||||||
|
chd_ph_data_t* chd = reinterpret_cast<chd_ph_data_t*>(mphf->data);
|
||||||
|
cmph_uint32 hl[3];
|
||||||
|
cmph_uint32 dispatch, position;
|
||||||
|
cmph_uint32 probe0, probe1;
|
||||||
|
cmph_uint32 f,g,h;
|
||||||
|
hash_vector(chd_ph->hl, reinterpret_cast<const char*>(&key), keylen, hl);
|
||||||
|
g = hl[0] % chd_ph->nbuckets;
|
||||||
|
f = hl[1] % chd_ph->n;
|
||||||
|
g = hl[2] % (chd_ph->n - 1) + 1;
|
||||||
|
dispatch = compressed_seq_query(chd_ph->cs, g);
|
||||||
|
probe0_num = disp % chd_ph->n;
|
||||||
|
probe1_num = disp / chd_ph->n;
|
||||||
|
position = (cmph_uint32)((f + ((cmph_uint64)h)*probe0 + probe1) % chd_ph->n);
|
||||||
|
return position;
|
||||||
|
}
|
||||||
|
|
||||||
|
void MPHTable::hash_vector(cmph_uint32 seed, const char* k, cmph_uint32 keylen,
|
||||||
|
cmph_uint32* hashes) {
|
||||||
|
cmph_uint32 len = keylen, length = keylen;
|
||||||
|
hashes[0] = hashes[1] = 0x9e3779b9; // the golden ratio; an arbitrary value
|
||||||
|
hashes[2] = seed; // the previous hash value - seed in our case
|
||||||
|
// consume most of the key
|
||||||
|
while (len >= 12) {
|
||||||
|
hashes[0] += ((cmph_uint32)k[0] +((cmph_uint32)k[1]<<8) +((cmph_uint32)k[2]<<16) +((cmph_uint32)k[3]<<24));
|
||||||
|
hashes[1] += ((cmph_uint32)k[4] +((cmph_uint32)k[5]<<8) +((cmph_uint32)k[6]<<16) +((cmph_uint32)k[7]<<24));
|
||||||
|
hashes[2] += ((cmph_uint32)k[8] +((cmph_uint32)k[9]<<8) +((cmph_uint32)k[10]<<16)+((cmph_uint32)k[11]<<24));
|
||||||
|
mix(hashes[0],hashes[1],hashes[2]);
|
||||||
|
k += 12; len -= 12;
|
||||||
|
}
|
||||||
|
// Consumes the remaining 11 bytes
|
||||||
|
hashes[2] += length;
|
||||||
|
switch(len) { // all the case statements fall through
|
||||||
|
case 11:
|
||||||
|
hashes[2] +=((cmph_uint32)k[10]<<24);
|
||||||
|
case 10:
|
||||||
|
hashes[2] +=((cmph_uint32)k[9]<<16);
|
||||||
|
case 9:
|
||||||
|
hashes[2] +=((cmph_uint32)k[8]<<8);
|
||||||
|
/* the first byte of hashes[2] is reserved for the length */
|
||||||
|
case 8:
|
||||||
|
hashes[1] +=((cmph_uint32)k[7]<<24);
|
||||||
|
case 7:
|
||||||
|
hashes[1] +=((cmph_uint32)k[6]<<16);
|
||||||
|
case 6:
|
||||||
|
hashes[1] +=((cmph_uint32)k[5]<<8);
|
||||||
|
case 5:
|
||||||
|
hashes[1] +=(cmph_uint8) k[4];
|
||||||
|
case 4:
|
||||||
|
hashes[0] +=((cmph_uint32)k[3]<<24);
|
||||||
|
case 3:
|
||||||
|
hashes[0] +=((cmph_uint32)k[2]<<16);
|
||||||
|
case 2:
|
||||||
|
hashes[0] +=((cmph_uint32)k[1]<<8);
|
||||||
|
case 1:
|
||||||
|
hashes[0] +=(cmph_uint8)k[0];
|
||||||
|
/* case 0: nothing left to add */
|
||||||
|
}
|
||||||
|
mix(hashes[0],hashes[1],hashes[2]);
|
||||||
|
}
|
||||||
|
|
||||||
|
cmph_uint32 MPHTable::select_query(select_t* sel, cmph_uint32 one_idx) {
|
||||||
|
cmph_uint8* bits_table = sel->bits_vec;
|
||||||
|
cmph_uint32* select_table = sel->select_table;
|
||||||
|
|
||||||
|
cmph_uint32 vec_bit_idx, vec_byte_idx;
|
||||||
|
cmph_uint32 part_sum, old_part_sum;
|
||||||
|
|
||||||
|
vec_bit_idx = select_table[one_idx >> NBITS_STEP_SELECT_TABLE]; // one_idx >> NBITS_STEP_SELECT_TABLE = one_idx/STEP_SELECT_TABLE
|
||||||
|
vec_byte_idx = vec_bit_idx >> 3; // vec_bit_idx / 8
|
||||||
|
|
||||||
|
one_idx &= MASK_STEP_SELECT_TABLE; // one_idx %= STEP_SELECT_TABLE == one_idx &= MASK_STEP_SELECT_TABLE
|
||||||
|
one_idx += rank_lookup_table[bits_table[vec_byte_idx] & ((1 << (vec_bit_idx & 0x7)) - 1)];
|
||||||
|
part_sum = 0;
|
||||||
|
|
||||||
|
do {
|
||||||
|
old_part_sum = part_sum;
|
||||||
|
part_sum += rank_lookup_table[bits_table[vec_byte_idx]];
|
||||||
|
vec_byte_idx++;
|
||||||
|
} while (part_sum <= one_idx);
|
||||||
|
return select_lookup_table[bits_table[vec_byte_idx - 1]][one_idx - old_part_sum] + ((vec_byte_idx-1) << 3);
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
rank_lookup_table[i] simply gives the number of bits set to one in the byte of value i.
|
||||||
|
For example if i = 01010101 in binary then we have :
|
||||||
|
rank_lookup_table[i] = 4
|
||||||
|
*/
|
||||||
|
|
||||||
|
static cmph_uint8 rank_lookup_table[256] ={
|
||||||
|
0 , 1 , 1 , 2 , 1 , 2 , 2 , 3 , 1 , 2 , 2 , 3 , 2 , 3 , 3 , 4
|
||||||
|
, 1 , 2 , 2 , 3 , 2 , 3 , 3 , 4 , 2 , 3 , 3 , 4 , 3 , 4 , 4 , 5
|
||||||
|
, 1 , 2 , 2 , 3 , 2 , 3 , 3 , 4 , 2 , 3 , 3 , 4 , 3 , 4 , 4 , 5
|
||||||
|
, 2 , 3 , 3 , 4 , 3 , 4 , 4 , 5 , 3 , 4 , 4 , 5 , 4 , 5 , 5 , 6
|
||||||
|
, 1 , 2 , 2 , 3 , 2 , 3 , 3 , 4 , 2 , 3 , 3 , 4 , 3 , 4 , 4 , 5
|
||||||
|
, 2 , 3 , 3 , 4 , 3 , 4 , 4 , 5 , 3 , 4 , 4 , 5 , 4 , 5 , 5 , 6
|
||||||
|
, 2 , 3 , 3 , 4 , 3 , 4 , 4 , 5 , 3 , 4 , 4 , 5 , 4 , 5 , 5 , 6
|
||||||
|
, 3 , 4 , 4 , 5 , 4 , 5 , 5 , 6 , 4 , 5 , 5 , 6 , 5 , 6 , 6 , 7
|
||||||
|
, 1 , 2 , 2 , 3 , 2 , 3 , 3 , 4 , 2 , 3 , 3 , 4 , 3 , 4 , 4 , 5
|
||||||
|
, 2 , 3 , 3 , 4 , 3 , 4 , 4 , 5 , 3 , 4 , 4 , 5 , 4 , 5 , 5 , 6
|
||||||
|
, 2 , 3 , 3 , 4 , 3 , 4 , 4 , 5 , 3 , 4 , 4 , 5 , 4 , 5 , 5 , 6
|
||||||
|
, 3 , 4 , 4 , 5 , 4 , 5 , 5 , 6 , 4 , 5 , 5 , 6 , 5 , 6 , 6 , 7
|
||||||
|
, 2 , 3 , 3 , 4 , 3 , 4 , 4 , 5 , 3 , 4 , 4 , 5 , 4 , 5 , 5 , 6
|
||||||
|
, 3 , 4 , 4 , 5 , 4 , 5 , 5 , 6 , 4 , 5 , 5 , 6 , 5 , 6 , 6 , 7
|
||||||
|
, 3 , 4 , 4 , 5 , 4 , 5 , 5 , 6 , 4 , 5 , 5 , 6 , 5 , 6 , 6 , 7
|
||||||
|
, 4 , 5 , 5 , 6 , 5 , 6 , 6 , 7 , 5 , 6 , 6 , 7 , 6 , 7 , 7 , 8
|
||||||
|
};
|
||||||
|
|
||||||
|
/*
|
||||||
|
select_lookup_table[i][j] simply gives the index of the j'th bit set to one in the byte of value i.
|
||||||
|
For example if i=01010101 in binary then we have :
|
||||||
|
select_lookup_table[i][0] = 0, the first bit set to one is at position 0
|
||||||
|
select_lookup_table[i][1] = 2, the second bit set to one is at position 2
|
||||||
|
select_lookup_table[i][2] = 4, the third bit set to one is at position 4
|
||||||
|
select_lookup_table[i][3] = 6, the fourth bit set to one is at position 6
|
||||||
|
select_lookup_table[i][4] = 255, there is no more than 4 bits set to one in i, so we return escape value 255.
|
||||||
|
*/
|
||||||
|
static cmph_uint8 select_lookup_table[256][8]={
|
||||||
|
{ 255 , 255 , 255 , 255 , 255 , 255 , 255 , 255 } , { 0 , 255 , 255 , 255 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 255 , 255 , 255 , 255 , 255 , 255 , 255 } , { 0 , 1 , 255 , 255 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 2 , 255 , 255 , 255 , 255 , 255 , 255 , 255 } , { 0 , 2 , 255 , 255 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 2 , 255 , 255 , 255 , 255 , 255 , 255 } , { 0 , 1 , 2 , 255 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 3 , 255 , 255 , 255 , 255 , 255 , 255 , 255 } , { 0 , 3 , 255 , 255 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 3 , 255 , 255 , 255 , 255 , 255 , 255 } , { 0 , 1 , 3 , 255 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 2 , 3 , 255 , 255 , 255 , 255 , 255 , 255 } , { 0 , 2 , 3 , 255 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 2 , 3 , 255 , 255 , 255 , 255 , 255 } , { 0 , 1 , 2 , 3 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 4 , 255 , 255 , 255 , 255 , 255 , 255 , 255 } , { 0 , 4 , 255 , 255 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 4 , 255 , 255 , 255 , 255 , 255 , 255 } , { 0 , 1 , 4 , 255 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 2 , 4 , 255 , 255 , 255 , 255 , 255 , 255 } , { 0 , 2 , 4 , 255 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 2 , 4 , 255 , 255 , 255 , 255 , 255 } , { 0 , 1 , 2 , 4 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 3 , 4 , 255 , 255 , 255 , 255 , 255 , 255 } , { 0 , 3 , 4 , 255 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 3 , 4 , 255 , 255 , 255 , 255 , 255 } , { 0 , 1 , 3 , 4 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 2 , 3 , 4 , 255 , 255 , 255 , 255 , 255 } , { 0 , 2 , 3 , 4 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 2 , 3 , 4 , 255 , 255 , 255 , 255 } , { 0 , 1 , 2 , 3 , 4 , 255 , 255 , 255 } ,
|
||||||
|
{ 5 , 255 , 255 , 255 , 255 , 255 , 255 , 255 } , { 0 , 5 , 255 , 255 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 5 , 255 , 255 , 255 , 255 , 255 , 255 } , { 0 , 1 , 5 , 255 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 2 , 5 , 255 , 255 , 255 , 255 , 255 , 255 } , { 0 , 2 , 5 , 255 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 2 , 5 , 255 , 255 , 255 , 255 , 255 } , { 0 , 1 , 2 , 5 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 3 , 5 , 255 , 255 , 255 , 255 , 255 , 255 } , { 0 , 3 , 5 , 255 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 3 , 5 , 255 , 255 , 255 , 255 , 255 } , { 0 , 1 , 3 , 5 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 2 , 3 , 5 , 255 , 255 , 255 , 255 , 255 } , { 0 , 2 , 3 , 5 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 2 , 3 , 5 , 255 , 255 , 255 , 255 } , { 0 , 1 , 2 , 3 , 5 , 255 , 255 , 255 } ,
|
||||||
|
{ 4 , 5 , 255 , 255 , 255 , 255 , 255 , 255 } , { 0 , 4 , 5 , 255 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 4 , 5 , 255 , 255 , 255 , 255 , 255 } , { 0 , 1 , 4 , 5 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 2 , 4 , 5 , 255 , 255 , 255 , 255 , 255 } , { 0 , 2 , 4 , 5 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 2 , 4 , 5 , 255 , 255 , 255 , 255 } , { 0 , 1 , 2 , 4 , 5 , 255 , 255 , 255 } ,
|
||||||
|
{ 3 , 4 , 5 , 255 , 255 , 255 , 255 , 255 } , { 0 , 3 , 4 , 5 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 3 , 4 , 5 , 255 , 255 , 255 , 255 } , { 0 , 1 , 3 , 4 , 5 , 255 , 255 , 255 } ,
|
||||||
|
{ 2 , 3 , 4 , 5 , 255 , 255 , 255 , 255 } , { 0 , 2 , 3 , 4 , 5 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 2 , 3 , 4 , 5 , 255 , 255 , 255 } , { 0 , 1 , 2 , 3 , 4 , 5 , 255 , 255 } ,
|
||||||
|
{ 6 , 255 , 255 , 255 , 255 , 255 , 255 , 255 } , { 0 , 6 , 255 , 255 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 6 , 255 , 255 , 255 , 255 , 255 , 255 } , { 0 , 1 , 6 , 255 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 2 , 6 , 255 , 255 , 255 , 255 , 255 , 255 } , { 0 , 2 , 6 , 255 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 2 , 6 , 255 , 255 , 255 , 255 , 255 } , { 0 , 1 , 2 , 6 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 3 , 6 , 255 , 255 , 255 , 255 , 255 , 255 } , { 0 , 3 , 6 , 255 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 3 , 6 , 255 , 255 , 255 , 255 , 255 } , { 0 , 1 , 3 , 6 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 2 , 3 , 6 , 255 , 255 , 255 , 255 , 255 } , { 0 , 2 , 3 , 6 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 2 , 3 , 6 , 255 , 255 , 255 , 255 } , { 0 , 1 , 2 , 3 , 6 , 255 , 255 , 255 } ,
|
||||||
|
{ 4 , 6 , 255 , 255 , 255 , 255 , 255 , 255 } , { 0 , 4 , 6 , 255 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 4 , 6 , 255 , 255 , 255 , 255 , 255 } , { 0 , 1 , 4 , 6 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 2 , 4 , 6 , 255 , 255 , 255 , 255 , 255 } , { 0 , 2 , 4 , 6 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 2 , 4 , 6 , 255 , 255 , 255 , 255 } , { 0 , 1 , 2 , 4 , 6 , 255 , 255 , 255 } ,
|
||||||
|
{ 3 , 4 , 6 , 255 , 255 , 255 , 255 , 255 } , { 0 , 3 , 4 , 6 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 3 , 4 , 6 , 255 , 255 , 255 , 255 } , { 0 , 1 , 3 , 4 , 6 , 255 , 255 , 255 } ,
|
||||||
|
{ 2 , 3 , 4 , 6 , 255 , 255 , 255 , 255 } , { 0 , 2 , 3 , 4 , 6 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 2 , 3 , 4 , 6 , 255 , 255 , 255 } , { 0 , 1 , 2 , 3 , 4 , 6 , 255 , 255 } ,
|
||||||
|
{ 5 , 6 , 255 , 255 , 255 , 255 , 255 , 255 } , { 0 , 5 , 6 , 255 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 5 , 6 , 255 , 255 , 255 , 255 , 255 } , { 0 , 1 , 5 , 6 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 2 , 5 , 6 , 255 , 255 , 255 , 255 , 255 } , { 0 , 2 , 5 , 6 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 2 , 5 , 6 , 255 , 255 , 255 , 255 } , { 0 , 1 , 2 , 5 , 6 , 255 , 255 , 255 } ,
|
||||||
|
{ 3 , 5 , 6 , 255 , 255 , 255 , 255 , 255 } , { 0 , 3 , 5 , 6 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 3 , 5 , 6 , 255 , 255 , 255 , 255 } , { 0 , 1 , 3 , 5 , 6 , 255 , 255 , 255 } ,
|
||||||
|
{ 2 , 3 , 5 , 6 , 255 , 255 , 255 , 255 } , { 0 , 2 , 3 , 5 , 6 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 2 , 3 , 5 , 6 , 255 , 255 , 255 } , { 0 , 1 , 2 , 3 , 5 , 6 , 255 , 255 } ,
|
||||||
|
{ 4 , 5 , 6 , 255 , 255 , 255 , 255 , 255 } , { 0 , 4 , 5 , 6 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 4 , 5 , 6 , 255 , 255 , 255 , 255 } , { 0 , 1 , 4 , 5 , 6 , 255 , 255 , 255 } ,
|
||||||
|
{ 2 , 4 , 5 , 6 , 255 , 255 , 255 , 255 } , { 0 , 2 , 4 , 5 , 6 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 2 , 4 , 5 , 6 , 255 , 255 , 255 } , { 0 , 1 , 2 , 4 , 5 , 6 , 255 , 255 } ,
|
||||||
|
{ 3 , 4 , 5 , 6 , 255 , 255 , 255 , 255 } , { 0 , 3 , 4 , 5 , 6 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 3 , 4 , 5 , 6 , 255 , 255 , 255 } , { 0 , 1 , 3 , 4 , 5 , 6 , 255 , 255 } ,
|
||||||
|
{ 2 , 3 , 4 , 5 , 6 , 255 , 255 , 255 } , { 0 , 2 , 3 , 4 , 5 , 6 , 255 , 255 } ,
|
||||||
|
{ 1 , 2 , 3 , 4 , 5 , 6 , 255 , 255 } , { 0 , 1 , 2 , 3 , 4 , 5 , 6 , 255 } ,
|
||||||
|
{ 7 , 255 , 255 , 255 , 255 , 255 , 255 , 255 } , { 0 , 7 , 255 , 255 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 7 , 255 , 255 , 255 , 255 , 255 , 255 } , { 0 , 1 , 7 , 255 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 2 , 7 , 255 , 255 , 255 , 255 , 255 , 255 } , { 0 , 2 , 7 , 255 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 2 , 7 , 255 , 255 , 255 , 255 , 255 } , { 0 , 1 , 2 , 7 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 3 , 7 , 255 , 255 , 255 , 255 , 255 , 255 } , { 0 , 3 , 7 , 255 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 3 , 7 , 255 , 255 , 255 , 255 , 255 } , { 0 , 1 , 3 , 7 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 2 , 3 , 7 , 255 , 255 , 255 , 255 , 255 } , { 0 , 2 , 3 , 7 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 2 , 3 , 7 , 255 , 255 , 255 , 255 } , { 0 , 1 , 2 , 3 , 7 , 255 , 255 , 255 } ,
|
||||||
|
{ 4 , 7 , 255 , 255 , 255 , 255 , 255 , 255 } , { 0 , 4 , 7 , 255 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 4 , 7 , 255 , 255 , 255 , 255 , 255 } , { 0 , 1 , 4 , 7 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 2 , 4 , 7 , 255 , 255 , 255 , 255 , 255 } , { 0 , 2 , 4 , 7 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 2 , 4 , 7 , 255 , 255 , 255 , 255 } , { 0 , 1 , 2 , 4 , 7 , 255 , 255 , 255 } ,
|
||||||
|
{ 3 , 4 , 7 , 255 , 255 , 255 , 255 , 255 } , { 0 , 3 , 4 , 7 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 3 , 4 , 7 , 255 , 255 , 255 , 255 } , { 0 , 1 , 3 , 4 , 7 , 255 , 255 , 255 } ,
|
||||||
|
{ 2 , 3 , 4 , 7 , 255 , 255 , 255 , 255 } , { 0 , 2 , 3 , 4 , 7 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 2 , 3 , 4 , 7 , 255 , 255 , 255 } , { 0 , 1 , 2 , 3 , 4 , 7 , 255 , 255 } ,
|
||||||
|
{ 5 , 7 , 255 , 255 , 255 , 255 , 255 , 255 } , { 0 , 5 , 7 , 255 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 5 , 7 , 255 , 255 , 255 , 255 , 255 } , { 0 , 1 , 5 , 7 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 2 , 5 , 7 , 255 , 255 , 255 , 255 , 255 } , { 0 , 2 , 5 , 7 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 2 , 5 , 7 , 255 , 255 , 255 , 255 } , { 0 , 1 , 2 , 5 , 7 , 255 , 255 , 255 } ,
|
||||||
|
{ 3 , 5 , 7 , 255 , 255 , 255 , 255 , 255 } , { 0 , 3 , 5 , 7 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 3 , 5 , 7 , 255 , 255 , 255 , 255 } , { 0 , 1 , 3 , 5 , 7 , 255 , 255 , 255 } ,
|
||||||
|
{ 2 , 3 , 5 , 7 , 255 , 255 , 255 , 255 } , { 0 , 2 , 3 , 5 , 7 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 2 , 3 , 5 , 7 , 255 , 255 , 255 } , { 0 , 1 , 2 , 3 , 5 , 7 , 255 , 255 } ,
|
||||||
|
{ 4 , 5 , 7 , 255 , 255 , 255 , 255 , 255 } , { 0 , 4 , 5 , 7 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 4 , 5 , 7 , 255 , 255 , 255 , 255 } , { 0 , 1 , 4 , 5 , 7 , 255 , 255 , 255 } ,
|
||||||
|
{ 2 , 4 , 5 , 7 , 255 , 255 , 255 , 255 } , { 0 , 2 , 4 , 5 , 7 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 2 , 4 , 5 , 7 , 255 , 255 , 255 } , { 0 , 1 , 2 , 4 , 5 , 7 , 255 , 255 } ,
|
||||||
|
{ 3 , 4 , 5 , 7 , 255 , 255 , 255 , 255 } , { 0 , 3 , 4 , 5 , 7 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 3 , 4 , 5 , 7 , 255 , 255 , 255 } , { 0 , 1 , 3 , 4 , 5 , 7 , 255 , 255 } ,
|
||||||
|
{ 2 , 3 , 4 , 5 , 7 , 255 , 255 , 255 } , { 0 , 2 , 3 , 4 , 5 , 7 , 255 , 255 } ,
|
||||||
|
{ 1 , 2 , 3 , 4 , 5 , 7 , 255 , 255 } , { 0 , 1 , 2 , 3 , 4 , 5 , 7 , 255 } ,
|
||||||
|
{ 6 , 7 , 255 , 255 , 255 , 255 , 255 , 255 } , { 0 , 6 , 7 , 255 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 6 , 7 , 255 , 255 , 255 , 255 , 255 } , { 0 , 1 , 6 , 7 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 2 , 6 , 7 , 255 , 255 , 255 , 255 , 255 } , { 0 , 2 , 6 , 7 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 2 , 6 , 7 , 255 , 255 , 255 , 255 } , { 0 , 1 , 2 , 6 , 7 , 255 , 255 , 255 } ,
|
||||||
|
{ 3 , 6 , 7 , 255 , 255 , 255 , 255 , 255 } , { 0 , 3 , 6 , 7 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 3 , 6 , 7 , 255 , 255 , 255 , 255 } , { 0 , 1 , 3 , 6 , 7 , 255 , 255 , 255 } ,
|
||||||
|
{ 2 , 3 , 6 , 7 , 255 , 255 , 255 , 255 } , { 0 , 2 , 3 , 6 , 7 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 2 , 3 , 6 , 7 , 255 , 255 , 255 } , { 0 , 1 , 2 , 3 , 6 , 7 , 255 , 255 } ,
|
||||||
|
{ 4 , 6 , 7 , 255 , 255 , 255 , 255 , 255 } , { 0 , 4 , 6 , 7 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 4 , 6 , 7 , 255 , 255 , 255 , 255 } , { 0 , 1 , 4 , 6 , 7 , 255 , 255 , 255 } ,
|
||||||
|
{ 2 , 4 , 6 , 7 , 255 , 255 , 255 , 255 } , { 0 , 2 , 4 , 6 , 7 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 2 , 4 , 6 , 7 , 255 , 255 , 255 } , { 0 , 1 , 2 , 4 , 6 , 7 , 255 , 255 } ,
|
||||||
|
{ 3 , 4 , 6 , 7 , 255 , 255 , 255 , 255 } , { 0 , 3 , 4 , 6 , 7 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 3 , 4 , 6 , 7 , 255 , 255 , 255 } , { 0 , 1 , 3 , 4 , 6 , 7 , 255 , 255 } ,
|
||||||
|
{ 2 , 3 , 4 , 6 , 7 , 255 , 255 , 255 } , { 0 , 2 , 3 , 4 , 6 , 7 , 255 , 255 } ,
|
||||||
|
{ 1 , 2 , 3 , 4 , 6 , 7 , 255 , 255 } , { 0 , 1 , 2 , 3 , 4 , 6 , 7 , 255 } ,
|
||||||
|
{ 5 , 6 , 7 , 255 , 255 , 255 , 255 , 255 } , { 0 , 5 , 6 , 7 , 255 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 5 , 6 , 7 , 255 , 255 , 255 , 255 } , { 0 , 1 , 5 , 6 , 7 , 255 , 255 , 255 } ,
|
||||||
|
{ 2 , 5 , 6 , 7 , 255 , 255 , 255 , 255 } , { 0 , 2 , 5 , 6 , 7 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 2 , 5 , 6 , 7 , 255 , 255 , 255 } , { 0 , 1 , 2 , 5 , 6 , 7 , 255 , 255 } ,
|
||||||
|
{ 3 , 5 , 6 , 7 , 255 , 255 , 255 , 255 } , { 0 , 3 , 5 , 6 , 7 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 3 , 5 , 6 , 7 , 255 , 255 , 255 } , { 0 , 1 , 3 , 5 , 6 , 7 , 255 , 255 } ,
|
||||||
|
{ 2 , 3 , 5 , 6 , 7 , 255 , 255 , 255 } , { 0 , 2 , 3 , 5 , 6 , 7 , 255 , 255 } ,
|
||||||
|
{ 1 , 2 , 3 , 5 , 6 , 7 , 255 , 255 } , { 0 , 1 , 2 , 3 , 5 , 6 , 7 , 255 } ,
|
||||||
|
{ 4 , 5 , 6 , 7 , 255 , 255 , 255 , 255 } , { 0 , 4 , 5 , 6 , 7 , 255 , 255 , 255 } ,
|
||||||
|
{ 1 , 4 , 5 , 6 , 7 , 255 , 255 , 255 } , { 0 , 1 , 4 , 5 , 6 , 7 , 255 , 255 } ,
|
||||||
|
{ 2 , 4 , 5 , 6 , 7 , 255 , 255 , 255 } , { 0 , 2 , 4 , 5 , 6 , 7 , 255 , 255 } ,
|
||||||
|
{ 1 , 2 , 4 , 5 , 6 , 7 , 255 , 255 } , { 0 , 1 , 2 , 4 , 5 , 6 , 7 , 255 } ,
|
||||||
|
{ 3 , 4 , 5 , 6 , 7 , 255 , 255 , 255 } , { 0 , 3 , 4 , 5 , 6 , 7 , 255 , 255 } ,
|
||||||
|
{ 1 , 3 , 4 , 5 , 6 , 7 , 255 , 255 } , { 0 , 1 , 3 , 4 , 5 , 6 , 7 , 255 } ,
|
||||||
|
{ 2 , 3 , 4 , 5 , 6 , 7 , 255 , 255 } , { 0 , 2 , 3 , 4 , 5 , 6 , 7 , 255 } ,
|
||||||
|
{ 1 , 2 , 3 , 4 , 5 , 6 , 7 , 255 } , { 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 } };
|
||||||
|
|
||||||
|
cmph_uint32 MPHTable::compressed_seq_query(compressed_seq_t * cs, cmph_uint32 idx)
|
||||||
|
{
|
||||||
|
cmph_uint32 enc_idx, enc_length;
|
||||||
|
cmph_uint32 rems_mask;
|
||||||
|
cmph_uint32 stored_value;
|
||||||
|
cmph_uint32 sel_res;
|
||||||
|
|
||||||
|
assert(idx < cs->n); // FABIANO ADDED
|
||||||
|
|
||||||
|
rems_mask = (1U << cs->rem_r) - 1U;
|
||||||
|
|
||||||
|
if(idx == 0) {
|
||||||
|
enc_idx = 0;
|
||||||
|
sel_res = select_query(&cs->sel, idx);
|
||||||
|
} else {
|
||||||
|
sel_res = select_query(&cs->sel, idx - 1);
|
||||||
|
enc_idx = (sel_res - (idx - 1)) << cs->rem_r;
|
||||||
|
enc_idx += get_bits_value(cs->length_rems, idx-1, cs->rem_r, rems_mask);
|
||||||
|
sel_res = select_next_query(&cs->sel, sel_res);
|
||||||
|
};
|
||||||
|
|
||||||
|
enc_length = (sel_res - idx) << cs->rem_r;
|
||||||
|
enc_length += get_bits_value(cs->length_rems, idx, cs->rem_r, rems_mask);
|
||||||
|
enc_length -= enc_idx;
|
||||||
|
if(enc_length == 0) return 0;
|
||||||
|
|
||||||
|
stored_value = get_bits_at_pos(cs->store_table, enc_idx, enc_length);
|
||||||
|
return stored_value + ((1U << enc_length) - 1U);
|
||||||
|
};
|
589
src/Makefile
589
src/Makefile
@ -1,589 +0,0 @@
|
|||||||
# Makefile.in generated by automake 1.10 from Makefile.am.
|
|
||||||
# src/Makefile. Generated from Makefile.in by configure.
|
|
||||||
|
|
||||||
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
|
|
||||||
# 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
|
|
||||||
# This Makefile.in is free software; the Free Software Foundation
|
|
||||||
# gives unlimited permission to copy and/or distribute it,
|
|
||||||
# with or without modifications, as long as this notice is preserved.
|
|
||||||
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
|
||||||
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
|
||||||
# PARTICULAR PURPOSE.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
pkgdatadir = $(datadir)/cmph
|
|
||||||
pkglibdir = $(libdir)/cmph
|
|
||||||
pkgincludedir = $(includedir)/cmph
|
|
||||||
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
|
||||||
install_sh_DATA = $(install_sh) -c -m 644
|
|
||||||
install_sh_PROGRAM = $(install_sh) -c
|
|
||||||
install_sh_SCRIPT = $(install_sh) -c
|
|
||||||
INSTALL_HEADER = $(INSTALL_DATA)
|
|
||||||
transform = $(program_transform_name)
|
|
||||||
NORMAL_INSTALL = :
|
|
||||||
PRE_INSTALL = :
|
|
||||||
POST_INSTALL = :
|
|
||||||
NORMAL_UNINSTALL = :
|
|
||||||
PRE_UNINSTALL = :
|
|
||||||
POST_UNINSTALL = :
|
|
||||||
build_triplet = i386-apple-darwin10.4.0
|
|
||||||
host_triplet = i386-apple-darwin10.4.0
|
|
||||||
bin_PROGRAMS = cmph$(EXEEXT)
|
|
||||||
subdir = src
|
|
||||||
DIST_COMMON = $(include_HEADERS) $(srcdir)/Makefile.am \
|
|
||||||
$(srcdir)/Makefile.in
|
|
||||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
|
||||||
am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
|
|
||||||
$(top_srcdir)/configure.ac
|
|
||||||
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
|
||||||
$(ACLOCAL_M4)
|
|
||||||
mkinstalldirs = $(install_sh) -d
|
|
||||||
CONFIG_HEADER = $(top_builddir)/config.h
|
|
||||||
CONFIG_CLEAN_FILES =
|
|
||||||
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
|
|
||||||
am__vpath_adj = case $$p in \
|
|
||||||
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
|
|
||||||
*) f=$$p;; \
|
|
||||||
esac;
|
|
||||||
am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
|
|
||||||
am__installdirs = "$(DESTDIR)$(libdir)" "$(DESTDIR)$(bindir)" \
|
|
||||||
"$(DESTDIR)$(includedir)"
|
|
||||||
libLTLIBRARIES_INSTALL = $(INSTALL)
|
|
||||||
LTLIBRARIES = $(lib_LTLIBRARIES)
|
|
||||||
libcmph_la_LIBADD =
|
|
||||||
am_libcmph_la_OBJECTS = hash.lo jenkins_hash.lo vstack.lo vqueue.lo \
|
|
||||||
graph.lo cmph.lo cmph_structs.lo chm.lo bmz.lo bmz8.lo bdz.lo \
|
|
||||||
bdz_ph.lo brz.lo fch.lo fch_buckets.lo chd.lo chd_ph.lo \
|
|
||||||
miller_rabin.lo buffer_manager.lo buffer_entry.lo select.lo \
|
|
||||||
compressed_seq.lo compressed_rank.lo
|
|
||||||
libcmph_la_OBJECTS = $(am_libcmph_la_OBJECTS)
|
|
||||||
libcmph_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
|
|
||||||
$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
|
|
||||||
$(libcmph_la_LDFLAGS) $(LDFLAGS) -o $@
|
|
||||||
binPROGRAMS_INSTALL = $(INSTALL_PROGRAM)
|
|
||||||
PROGRAMS = $(bin_PROGRAMS)
|
|
||||||
am_cmph_OBJECTS = main.$(OBJEXT) wingetopt.$(OBJEXT)
|
|
||||||
cmph_OBJECTS = $(am_cmph_OBJECTS)
|
|
||||||
cmph_DEPENDENCIES = libcmph.la
|
|
||||||
DEFAULT_INCLUDES = -I. -I$(top_builddir)
|
|
||||||
depcomp = $(SHELL) $(top_srcdir)/depcomp
|
|
||||||
am__depfiles_maybe = depfiles
|
|
||||||
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
|
|
||||||
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
|
||||||
LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
|
|
||||||
--mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
|
|
||||||
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
|
||||||
CCLD = $(CC)
|
|
||||||
LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
|
|
||||||
--mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
|
|
||||||
$(LDFLAGS) -o $@
|
|
||||||
SOURCES = $(libcmph_la_SOURCES) $(cmph_SOURCES)
|
|
||||||
DIST_SOURCES = $(libcmph_la_SOURCES) $(cmph_SOURCES)
|
|
||||||
includeHEADERS_INSTALL = $(INSTALL_HEADER)
|
|
||||||
HEADERS = $(include_HEADERS)
|
|
||||||
ETAGS = etags
|
|
||||||
CTAGS = ctags
|
|
||||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
|
||||||
ACLOCAL = ${SHELL} /Users/davi/vc/cmphsf/missing --run aclocal-1.10
|
|
||||||
AMTAR = ${SHELL} /Users/davi/vc/cmphsf/missing --run tar
|
|
||||||
AR = ar
|
|
||||||
AUTOCONF = ${SHELL} /Users/davi/vc/cmphsf/missing --run autoconf
|
|
||||||
AUTOHEADER = ${SHELL} /Users/davi/vc/cmphsf/missing --run autoheader
|
|
||||||
AUTOMAKE = ${SHELL} /Users/davi/vc/cmphsf/missing --run automake-1.10
|
|
||||||
AWK = awk
|
|
||||||
CC = gcc
|
|
||||||
CCDEPMODE = depmode=gcc3
|
|
||||||
CFLAGS = -g -O2
|
|
||||||
CPP = gcc -E
|
|
||||||
CPPFLAGS =
|
|
||||||
CYGPATH_W = echo
|
|
||||||
DEFS = -DHAVE_CONFIG_H
|
|
||||||
DEPDIR = .deps
|
|
||||||
DSYMUTIL = dsymutil
|
|
||||||
DUMPBIN =
|
|
||||||
ECHO_C =
|
|
||||||
ECHO_N = -n
|
|
||||||
ECHO_T =
|
|
||||||
EGREP = /usr/bin/grep -E
|
|
||||||
EXEEXT =
|
|
||||||
FGREP = /usr/bin/grep -F
|
|
||||||
GETCONF = getconf
|
|
||||||
GREP = /usr/bin/grep
|
|
||||||
INSTALL = /usr/bin/install -c
|
|
||||||
INSTALL_DATA = ${INSTALL} -m 644
|
|
||||||
INSTALL_PROGRAM = ${INSTALL}
|
|
||||||
INSTALL_SCRIPT = ${INSTALL}
|
|
||||||
INSTALL_STRIP_PROGRAM = $(install_sh) -c -s
|
|
||||||
LD = /usr/libexec/gcc/i686-apple-darwin10/4.2.1/ld
|
|
||||||
LDFLAGS =
|
|
||||||
LIBM =
|
|
||||||
LIBOBJS =
|
|
||||||
LIBS =
|
|
||||||
LIBTOOL = $(SHELL) $(top_builddir)/libtool
|
|
||||||
LIPO = lipo
|
|
||||||
LN_S = ln -s
|
|
||||||
LTLIBOBJS =
|
|
||||||
MAKEINFO = ${SHELL} /Users/davi/vc/cmphsf/missing --run makeinfo
|
|
||||||
MKDIR_P = .././install-sh -c -d
|
|
||||||
NM = /usr/bin/nm
|
|
||||||
NMEDIT = nmedit
|
|
||||||
OBJEXT = o
|
|
||||||
OTOOL = otool
|
|
||||||
OTOOL64 = :
|
|
||||||
PACKAGE = cmph
|
|
||||||
PACKAGE_BUGREPORT =
|
|
||||||
PACKAGE_NAME =
|
|
||||||
PACKAGE_STRING =
|
|
||||||
PACKAGE_TARNAME =
|
|
||||||
PACKAGE_VERSION =
|
|
||||||
PATH_SEPARATOR = :
|
|
||||||
RANLIB = ranlib
|
|
||||||
SED = /usr/bin/sed
|
|
||||||
SET_MAKE =
|
|
||||||
SHELL = /bin/sh
|
|
||||||
STRIP = strip
|
|
||||||
VERSION = 1.0
|
|
||||||
abs_builddir = /Users/davi/vc/cmphsf/src
|
|
||||||
abs_srcdir = /Users/davi/vc/cmphsf/src
|
|
||||||
abs_top_builddir = /Users/davi/vc/cmphsf
|
|
||||||
abs_top_srcdir = /Users/davi/vc/cmphsf
|
|
||||||
ac_ct_CC = gcc
|
|
||||||
ac_ct_DUMPBIN =
|
|
||||||
am__include = include
|
|
||||||
am__leading_dot = .
|
|
||||||
am__quote =
|
|
||||||
am__tar = ${AMTAR} chof - "$$tardir"
|
|
||||||
am__untar = ${AMTAR} xf -
|
|
||||||
bindir = ${exec_prefix}/bin
|
|
||||||
build = i386-apple-darwin10.4.0
|
|
||||||
build_alias =
|
|
||||||
build_cpu = i386
|
|
||||||
build_os = darwin10.4.0
|
|
||||||
build_vendor = apple
|
|
||||||
builddir = .
|
|
||||||
datadir = ${datarootdir}
|
|
||||||
datarootdir = ${prefix}/share
|
|
||||||
docdir = ${datarootdir}/doc/${PACKAGE}
|
|
||||||
dvidir = ${docdir}
|
|
||||||
exec_prefix = ${prefix}
|
|
||||||
host = i386-apple-darwin10.4.0
|
|
||||||
host_alias =
|
|
||||||
host_cpu = i386
|
|
||||||
host_os = darwin10.4.0
|
|
||||||
host_vendor = apple
|
|
||||||
htmldir = ${docdir}
|
|
||||||
includedir = ${prefix}/include
|
|
||||||
infodir = ${datarootdir}/info
|
|
||||||
install_sh = $(SHELL) /Users/davi/vc/cmphsf/install-sh
|
|
||||||
libdir = ${exec_prefix}/lib
|
|
||||||
libexecdir = ${exec_prefix}/libexec
|
|
||||||
localedir = ${datarootdir}/locale
|
|
||||||
localstatedir = ${prefix}/var
|
|
||||||
lt_ECHO = echo
|
|
||||||
mandir = ${datarootdir}/man
|
|
||||||
mkdir_p = $(top_builddir)/./install-sh -c -d
|
|
||||||
oldincludedir = /usr/include
|
|
||||||
pdfdir = ${docdir}
|
|
||||||
prefix = /usr
|
|
||||||
program_transform_name = s,x,x,
|
|
||||||
psdir = ${docdir}
|
|
||||||
sbindir = ${exec_prefix}/sbin
|
|
||||||
sharedstatedir = ${prefix}/com
|
|
||||||
srcdir = .
|
|
||||||
sysconfdir = ${prefix}/etc
|
|
||||||
target_alias =
|
|
||||||
top_builddir = ..
|
|
||||||
top_srcdir = ..
|
|
||||||
lib_LTLIBRARIES = libcmph.la
|
|
||||||
include_HEADERS = cmph.h cmph_types.h cmph_time.h
|
|
||||||
libcmph_la_SOURCES = hash.h hash.c \
|
|
||||||
jenkins_hash.h jenkins_hash.c\
|
|
||||||
hash_state.h debug.h \
|
|
||||||
vstack.h vstack.c vqueue.h vqueue.c\
|
|
||||||
graph.h graph.c bitbool.h \
|
|
||||||
cmph.h cmph.c cmph_structs.h cmph_structs.c\
|
|
||||||
chm.h chm.c chm_structs.h \
|
|
||||||
bmz.h bmz.c bmz_structs.h \
|
|
||||||
bmz8.h bmz8.c bmz8_structs.h \
|
|
||||||
bdz.h bdz.c bdz_structs.h \
|
|
||||||
bdz_ph.h bdz_ph.c bdz_structs_ph.h \
|
|
||||||
brz.h brz.c brz_structs.h \
|
|
||||||
fch.h fch.c fch_structs.h \
|
|
||||||
fch_buckets.h fch_buckets.c \
|
|
||||||
chd.h chd.c chd_structs.h \
|
|
||||||
chd_ph.h chd_ph.c chd_structs_ph.h \
|
|
||||||
miller_rabin.h miller_rabin.c \
|
|
||||||
buffer_manager.h buffer_manager.c \
|
|
||||||
buffer_entry.h buffer_entry.c\
|
|
||||||
select.h select.c select_lookup_tables.h \
|
|
||||||
compressed_seq.h compressed_seq.c \
|
|
||||||
compressed_rank.h compressed_rank.c \
|
|
||||||
cmph_time.h
|
|
||||||
|
|
||||||
libcmph_la_LDFLAGS = -version-info 0:0:0
|
|
||||||
cmph_SOURCES = main.c wingetopt.h wingetopt.c
|
|
||||||
cmph_LDADD = libcmph.la
|
|
||||||
all: all-am
|
|
||||||
|
|
||||||
.SUFFIXES:
|
|
||||||
.SUFFIXES: .c .lo .o .obj
|
|
||||||
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
|
|
||||||
@for dep in $?; do \
|
|
||||||
case '$(am__configure_deps)' in \
|
|
||||||
*$$dep*) \
|
|
||||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
|
|
||||||
&& exit 0; \
|
|
||||||
exit 1;; \
|
|
||||||
esac; \
|
|
||||||
done; \
|
|
||||||
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/Makefile'; \
|
|
||||||
cd $(top_srcdir) && \
|
|
||||||
$(AUTOMAKE) --gnu src/Makefile
|
|
||||||
.PRECIOUS: Makefile
|
|
||||||
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
|
||||||
@case '$?' in \
|
|
||||||
*config.status*) \
|
|
||||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
|
|
||||||
*) \
|
|
||||||
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
|
|
||||||
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
|
|
||||||
esac;
|
|
||||||
|
|
||||||
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
|
||||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
|
||||||
|
|
||||||
$(top_srcdir)/configure: $(am__configure_deps)
|
|
||||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
|
||||||
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
|
|
||||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
|
||||||
install-libLTLIBRARIES: $(lib_LTLIBRARIES)
|
|
||||||
@$(NORMAL_INSTALL)
|
|
||||||
test -z "$(libdir)" || $(MKDIR_P) "$(DESTDIR)$(libdir)"
|
|
||||||
@list='$(lib_LTLIBRARIES)'; for p in $$list; do \
|
|
||||||
if test -f $$p; then \
|
|
||||||
f=$(am__strip_dir) \
|
|
||||||
echo " $(LIBTOOL) --mode=install $(libLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) '$$p' '$(DESTDIR)$(libdir)/$$f'"; \
|
|
||||||
$(LIBTOOL) --mode=install $(libLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) "$$p" "$(DESTDIR)$(libdir)/$$f"; \
|
|
||||||
else :; fi; \
|
|
||||||
done
|
|
||||||
|
|
||||||
uninstall-libLTLIBRARIES:
|
|
||||||
@$(NORMAL_UNINSTALL)
|
|
||||||
@list='$(lib_LTLIBRARIES)'; for p in $$list; do \
|
|
||||||
p=$(am__strip_dir) \
|
|
||||||
echo " $(LIBTOOL) --mode=uninstall rm -f '$(DESTDIR)$(libdir)/$$p'"; \
|
|
||||||
$(LIBTOOL) --mode=uninstall rm -f "$(DESTDIR)$(libdir)/$$p"; \
|
|
||||||
done
|
|
||||||
|
|
||||||
clean-libLTLIBRARIES:
|
|
||||||
-test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES)
|
|
||||||
@list='$(lib_LTLIBRARIES)'; for p in $$list; do \
|
|
||||||
dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
|
|
||||||
test "$$dir" != "$$p" || dir=.; \
|
|
||||||
echo "rm -f \"$${dir}/so_locations\""; \
|
|
||||||
rm -f "$${dir}/so_locations"; \
|
|
||||||
done
|
|
||||||
libcmph.la: $(libcmph_la_OBJECTS) $(libcmph_la_DEPENDENCIES)
|
|
||||||
$(libcmph_la_LINK) -rpath $(libdir) $(libcmph_la_OBJECTS) $(libcmph_la_LIBADD) $(LIBS)
|
|
||||||
install-binPROGRAMS: $(bin_PROGRAMS)
|
|
||||||
@$(NORMAL_INSTALL)
|
|
||||||
test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)"
|
|
||||||
@list='$(bin_PROGRAMS)'; for p in $$list; do \
|
|
||||||
p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \
|
|
||||||
if test -f $$p \
|
|
||||||
|| test -f $$p1 \
|
|
||||||
; then \
|
|
||||||
f=`echo "$$p1" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \
|
|
||||||
echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(binPROGRAMS_INSTALL) '$$p' '$(DESTDIR)$(bindir)/$$f'"; \
|
|
||||||
$(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(binPROGRAMS_INSTALL) "$$p" "$(DESTDIR)$(bindir)/$$f" || exit 1; \
|
|
||||||
else :; fi; \
|
|
||||||
done
|
|
||||||
|
|
||||||
uninstall-binPROGRAMS:
|
|
||||||
@$(NORMAL_UNINSTALL)
|
|
||||||
@list='$(bin_PROGRAMS)'; for p in $$list; do \
|
|
||||||
f=`echo "$$p" | sed 's,^.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \
|
|
||||||
echo " rm -f '$(DESTDIR)$(bindir)/$$f'"; \
|
|
||||||
rm -f "$(DESTDIR)$(bindir)/$$f"; \
|
|
||||||
done
|
|
||||||
|
|
||||||
clean-binPROGRAMS:
|
|
||||||
@list='$(bin_PROGRAMS)'; for p in $$list; do \
|
|
||||||
f=`echo $$p|sed 's/$(EXEEXT)$$//'`; \
|
|
||||||
echo " rm -f $$p $$f"; \
|
|
||||||
rm -f $$p $$f ; \
|
|
||||||
done
|
|
||||||
cmph$(EXEEXT): $(cmph_OBJECTS) $(cmph_DEPENDENCIES)
|
|
||||||
@rm -f cmph$(EXEEXT)
|
|
||||||
$(LINK) $(cmph_OBJECTS) $(cmph_LDADD) $(LIBS)
|
|
||||||
|
|
||||||
mostlyclean-compile:
|
|
||||||
-rm -f *.$(OBJEXT)
|
|
||||||
|
|
||||||
distclean-compile:
|
|
||||||
-rm -f *.tab.c
|
|
||||||
|
|
||||||
include ./$(DEPDIR)/bdz.Plo
|
|
||||||
include ./$(DEPDIR)/bdz_ph.Plo
|
|
||||||
include ./$(DEPDIR)/bmz.Plo
|
|
||||||
include ./$(DEPDIR)/bmz8.Plo
|
|
||||||
include ./$(DEPDIR)/brz.Plo
|
|
||||||
include ./$(DEPDIR)/buffer_entry.Plo
|
|
||||||
include ./$(DEPDIR)/buffer_manager.Plo
|
|
||||||
include ./$(DEPDIR)/chd.Plo
|
|
||||||
include ./$(DEPDIR)/chd_ph.Plo
|
|
||||||
include ./$(DEPDIR)/chm.Plo
|
|
||||||
include ./$(DEPDIR)/cmph.Plo
|
|
||||||
include ./$(DEPDIR)/cmph_structs.Plo
|
|
||||||
include ./$(DEPDIR)/compressed_rank.Plo
|
|
||||||
include ./$(DEPDIR)/compressed_seq.Plo
|
|
||||||
include ./$(DEPDIR)/fch.Plo
|
|
||||||
include ./$(DEPDIR)/fch_buckets.Plo
|
|
||||||
include ./$(DEPDIR)/graph.Plo
|
|
||||||
include ./$(DEPDIR)/hash.Plo
|
|
||||||
include ./$(DEPDIR)/jenkins_hash.Plo
|
|
||||||
include ./$(DEPDIR)/main.Po
|
|
||||||
include ./$(DEPDIR)/miller_rabin.Plo
|
|
||||||
include ./$(DEPDIR)/select.Plo
|
|
||||||
include ./$(DEPDIR)/vqueue.Plo
|
|
||||||
include ./$(DEPDIR)/vstack.Plo
|
|
||||||
include ./$(DEPDIR)/wingetopt.Po
|
|
||||||
|
|
||||||
.c.o:
|
|
||||||
$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
|
|
||||||
mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
|
|
||||||
# source='$<' object='$@' libtool=no \
|
|
||||||
# DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \
|
|
||||||
# $(COMPILE) -c $<
|
|
||||||
|
|
||||||
.c.obj:
|
|
||||||
$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
|
|
||||||
mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
|
|
||||||
# source='$<' object='$@' libtool=no \
|
|
||||||
# DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \
|
|
||||||
# $(COMPILE) -c `$(CYGPATH_W) '$<'`
|
|
||||||
|
|
||||||
.c.lo:
|
|
||||||
$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
|
|
||||||
mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
|
|
||||||
# source='$<' object='$@' libtool=yes \
|
|
||||||
# DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \
|
|
||||||
# $(LTCOMPILE) -c -o $@ $<
|
|
||||||
|
|
||||||
mostlyclean-libtool:
|
|
||||||
-rm -f *.lo
|
|
||||||
|
|
||||||
clean-libtool:
|
|
||||||
-rm -rf .libs _libs
|
|
||||||
install-includeHEADERS: $(include_HEADERS)
|
|
||||||
@$(NORMAL_INSTALL)
|
|
||||||
test -z "$(includedir)" || $(MKDIR_P) "$(DESTDIR)$(includedir)"
|
|
||||||
@list='$(include_HEADERS)'; for p in $$list; do \
|
|
||||||
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
|
|
||||||
f=$(am__strip_dir) \
|
|
||||||
echo " $(includeHEADERS_INSTALL) '$$d$$p' '$(DESTDIR)$(includedir)/$$f'"; \
|
|
||||||
$(includeHEADERS_INSTALL) "$$d$$p" "$(DESTDIR)$(includedir)/$$f"; \
|
|
||||||
done
|
|
||||||
|
|
||||||
uninstall-includeHEADERS:
|
|
||||||
@$(NORMAL_UNINSTALL)
|
|
||||||
@list='$(include_HEADERS)'; for p in $$list; do \
|
|
||||||
f=$(am__strip_dir) \
|
|
||||||
echo " rm -f '$(DESTDIR)$(includedir)/$$f'"; \
|
|
||||||
rm -f "$(DESTDIR)$(includedir)/$$f"; \
|
|
||||||
done
|
|
||||||
|
|
||||||
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
|
|
||||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
|
||||||
unique=`for i in $$list; do \
|
|
||||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
|
||||||
done | \
|
|
||||||
$(AWK) ' { files[$$0] = 1; } \
|
|
||||||
END { for (i in files) print i; }'`; \
|
|
||||||
mkid -fID $$unique
|
|
||||||
tags: TAGS
|
|
||||||
|
|
||||||
TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
|
||||||
$(TAGS_FILES) $(LISP)
|
|
||||||
tags=; \
|
|
||||||
here=`pwd`; \
|
|
||||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
|
||||||
unique=`for i in $$list; do \
|
|
||||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
|
||||||
done | \
|
|
||||||
$(AWK) ' { files[$$0] = 1; } \
|
|
||||||
END { for (i in files) print i; }'`; \
|
|
||||||
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
|
|
||||||
test -n "$$unique" || unique=$$empty_fix; \
|
|
||||||
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
|
||||||
$$tags $$unique; \
|
|
||||||
fi
|
|
||||||
ctags: CTAGS
|
|
||||||
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
|
||||||
$(TAGS_FILES) $(LISP)
|
|
||||||
tags=; \
|
|
||||||
here=`pwd`; \
|
|
||||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
|
||||||
unique=`for i in $$list; do \
|
|
||||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
|
||||||
done | \
|
|
||||||
$(AWK) ' { files[$$0] = 1; } \
|
|
||||||
END { for (i in files) print i; }'`; \
|
|
||||||
test -z "$(CTAGS_ARGS)$$tags$$unique" \
|
|
||||||
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
|
|
||||||
$$tags $$unique
|
|
||||||
|
|
||||||
GTAGS:
|
|
||||||
here=`$(am__cd) $(top_builddir) && pwd` \
|
|
||||||
&& cd $(top_srcdir) \
|
|
||||||
&& gtags -i $(GTAGS_ARGS) $$here
|
|
||||||
|
|
||||||
distclean-tags:
|
|
||||||
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
|
||||||
|
|
||||||
distdir: $(DISTFILES)
|
|
||||||
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
|
||||||
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
|
||||||
list='$(DISTFILES)'; \
|
|
||||||
dist_files=`for file in $$list; do echo $$file; done | \
|
|
||||||
sed -e "s|^$$srcdirstrip/||;t" \
|
|
||||||
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
|
|
||||||
case $$dist_files in \
|
|
||||||
*/*) $(MKDIR_P) `echo "$$dist_files" | \
|
|
||||||
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
|
|
||||||
sort -u` ;; \
|
|
||||||
esac; \
|
|
||||||
for file in $$dist_files; do \
|
|
||||||
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
|
|
||||||
if test -d $$d/$$file; then \
|
|
||||||
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
|
|
||||||
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
|
|
||||||
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
|
|
||||||
fi; \
|
|
||||||
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
|
|
||||||
else \
|
|
||||||
test -f $(distdir)/$$file \
|
|
||||||
|| cp -p $$d/$$file $(distdir)/$$file \
|
|
||||||
|| exit 1; \
|
|
||||||
fi; \
|
|
||||||
done
|
|
||||||
check-am: all-am
|
|
||||||
check: check-am
|
|
||||||
all-am: Makefile $(LTLIBRARIES) $(PROGRAMS) $(HEADERS)
|
|
||||||
install-binPROGRAMS: install-libLTLIBRARIES
|
|
||||||
|
|
||||||
installdirs:
|
|
||||||
for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(bindir)" "$(DESTDIR)$(includedir)"; do \
|
|
||||||
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
|
|
||||||
done
|
|
||||||
install: install-am
|
|
||||||
install-exec: install-exec-am
|
|
||||||
install-data: install-data-am
|
|
||||||
uninstall: uninstall-am
|
|
||||||
|
|
||||||
install-am: all-am
|
|
||||||
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
|
|
||||||
|
|
||||||
installcheck: installcheck-am
|
|
||||||
install-strip:
|
|
||||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
|
||||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
|
||||||
`test -z '$(STRIP)' || \
|
|
||||||
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
|
|
||||||
mostlyclean-generic:
|
|
||||||
|
|
||||||
clean-generic:
|
|
||||||
|
|
||||||
distclean-generic:
|
|
||||||
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
|
|
||||||
|
|
||||||
maintainer-clean-generic:
|
|
||||||
@echo "This command is intended for maintainers to use"
|
|
||||||
@echo "it deletes files that may require special tools to rebuild."
|
|
||||||
clean: clean-am
|
|
||||||
|
|
||||||
clean-am: clean-binPROGRAMS clean-generic clean-libLTLIBRARIES \
|
|
||||||
clean-libtool mostlyclean-am
|
|
||||||
|
|
||||||
distclean: distclean-am
|
|
||||||
-rm -rf ./$(DEPDIR)
|
|
||||||
-rm -f Makefile
|
|
||||||
distclean-am: clean-am distclean-compile distclean-generic \
|
|
||||||
distclean-tags
|
|
||||||
|
|
||||||
dvi: dvi-am
|
|
||||||
|
|
||||||
dvi-am:
|
|
||||||
|
|
||||||
html: html-am
|
|
||||||
|
|
||||||
info: info-am
|
|
||||||
|
|
||||||
info-am:
|
|
||||||
|
|
||||||
install-data-am: install-includeHEADERS
|
|
||||||
|
|
||||||
install-dvi: install-dvi-am
|
|
||||||
|
|
||||||
install-exec-am: install-binPROGRAMS install-libLTLIBRARIES
|
|
||||||
|
|
||||||
install-html: install-html-am
|
|
||||||
|
|
||||||
install-info: install-info-am
|
|
||||||
|
|
||||||
install-man:
|
|
||||||
|
|
||||||
install-pdf: install-pdf-am
|
|
||||||
|
|
||||||
install-ps: install-ps-am
|
|
||||||
|
|
||||||
installcheck-am:
|
|
||||||
|
|
||||||
maintainer-clean: maintainer-clean-am
|
|
||||||
-rm -rf ./$(DEPDIR)
|
|
||||||
-rm -f Makefile
|
|
||||||
maintainer-clean-am: distclean-am maintainer-clean-generic
|
|
||||||
|
|
||||||
mostlyclean: mostlyclean-am
|
|
||||||
|
|
||||||
mostlyclean-am: mostlyclean-compile mostlyclean-generic \
|
|
||||||
mostlyclean-libtool
|
|
||||||
|
|
||||||
pdf: pdf-am
|
|
||||||
|
|
||||||
pdf-am:
|
|
||||||
|
|
||||||
ps: ps-am
|
|
||||||
|
|
||||||
ps-am:
|
|
||||||
|
|
||||||
uninstall-am: uninstall-binPROGRAMS uninstall-includeHEADERS \
|
|
||||||
uninstall-libLTLIBRARIES
|
|
||||||
|
|
||||||
.MAKE: install-am install-strip
|
|
||||||
|
|
||||||
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
|
|
||||||
clean-generic clean-libLTLIBRARIES clean-libtool ctags \
|
|
||||||
distclean distclean-compile distclean-generic \
|
|
||||||
distclean-libtool distclean-tags distdir dvi dvi-am html \
|
|
||||||
html-am info info-am install install-am install-binPROGRAMS \
|
|
||||||
install-data install-data-am install-dvi install-dvi-am \
|
|
||||||
install-exec install-exec-am install-html install-html-am \
|
|
||||||
install-includeHEADERS install-info install-info-am \
|
|
||||||
install-libLTLIBRARIES install-man install-pdf install-pdf-am \
|
|
||||||
install-ps install-ps-am install-strip installcheck \
|
|
||||||
installcheck-am installdirs maintainer-clean \
|
|
||||||
maintainer-clean-generic mostlyclean mostlyclean-compile \
|
|
||||||
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
|
|
||||||
tags uninstall uninstall-am uninstall-binPROGRAMS \
|
|
||||||
uninstall-includeHEADERS uninstall-libLTLIBRARIES
|
|
||||||
|
|
||||||
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
|
||||||
# Otherwise a system limit (for SysV at least) may be exceeded.
|
|
||||||
.NOEXPORT:
|
|
@ -1,6 +1,6 @@
|
|||||||
bin_PROGRAMS = cmph
|
bin_PROGRAMS = cmph
|
||||||
lib_LTLIBRARIES = libcmph.la
|
lib_LTLIBRARIES = libcmph.la
|
||||||
include_HEADERS = cmph.h cmph_types.h cmph_time.h
|
include_HEADERS = cmph.h cmph_types.h cmph_time.h chd_ph.h
|
||||||
libcmph_la_SOURCES = hash.h hash.c \
|
libcmph_la_SOURCES = hash.h hash.c \
|
||||||
jenkins_hash.h jenkins_hash.c\
|
jenkins_hash.h jenkins_hash.c\
|
||||||
hash_state.h debug.h \
|
hash_state.h debug.h \
|
||||||
|
589
src/Makefile.in
589
src/Makefile.in
@ -1,589 +0,0 @@
|
|||||||
# Makefile.in generated by automake 1.10 from Makefile.am.
|
|
||||||
# @configure_input@
|
|
||||||
|
|
||||||
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
|
|
||||||
# 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
|
|
||||||
# This Makefile.in is free software; the Free Software Foundation
|
|
||||||
# gives unlimited permission to copy and/or distribute it,
|
|
||||||
# with or without modifications, as long as this notice is preserved.
|
|
||||||
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
|
||||||
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
|
||||||
# PARTICULAR PURPOSE.
|
|
||||||
|
|
||||||
@SET_MAKE@
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
VPATH = @srcdir@
|
|
||||||
pkgdatadir = $(datadir)/@PACKAGE@
|
|
||||||
pkglibdir = $(libdir)/@PACKAGE@
|
|
||||||
pkgincludedir = $(includedir)/@PACKAGE@
|
|
||||||
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
|
||||||
install_sh_DATA = $(install_sh) -c -m 644
|
|
||||||
install_sh_PROGRAM = $(install_sh) -c
|
|
||||||
install_sh_SCRIPT = $(install_sh) -c
|
|
||||||
INSTALL_HEADER = $(INSTALL_DATA)
|
|
||||||
transform = $(program_transform_name)
|
|
||||||
NORMAL_INSTALL = :
|
|
||||||
PRE_INSTALL = :
|
|
||||||
POST_INSTALL = :
|
|
||||||
NORMAL_UNINSTALL = :
|
|
||||||
PRE_UNINSTALL = :
|
|
||||||
POST_UNINSTALL = :
|
|
||||||
build_triplet = @build@
|
|
||||||
host_triplet = @host@
|
|
||||||
bin_PROGRAMS = cmph$(EXEEXT)
|
|
||||||
subdir = src
|
|
||||||
DIST_COMMON = $(include_HEADERS) $(srcdir)/Makefile.am \
|
|
||||||
$(srcdir)/Makefile.in
|
|
||||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
|
||||||
am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
|
|
||||||
$(top_srcdir)/configure.ac
|
|
||||||
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
|
||||||
$(ACLOCAL_M4)
|
|
||||||
mkinstalldirs = $(install_sh) -d
|
|
||||||
CONFIG_HEADER = $(top_builddir)/config.h
|
|
||||||
CONFIG_CLEAN_FILES =
|
|
||||||
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
|
|
||||||
am__vpath_adj = case $$p in \
|
|
||||||
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
|
|
||||||
*) f=$$p;; \
|
|
||||||
esac;
|
|
||||||
am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
|
|
||||||
am__installdirs = "$(DESTDIR)$(libdir)" "$(DESTDIR)$(bindir)" \
|
|
||||||
"$(DESTDIR)$(includedir)"
|
|
||||||
libLTLIBRARIES_INSTALL = $(INSTALL)
|
|
||||||
LTLIBRARIES = $(lib_LTLIBRARIES)
|
|
||||||
libcmph_la_LIBADD =
|
|
||||||
am_libcmph_la_OBJECTS = hash.lo jenkins_hash.lo vstack.lo vqueue.lo \
|
|
||||||
graph.lo cmph.lo cmph_structs.lo chm.lo bmz.lo bmz8.lo bdz.lo \
|
|
||||||
bdz_ph.lo brz.lo fch.lo fch_buckets.lo chd.lo chd_ph.lo \
|
|
||||||
miller_rabin.lo buffer_manager.lo buffer_entry.lo select.lo \
|
|
||||||
compressed_seq.lo compressed_rank.lo
|
|
||||||
libcmph_la_OBJECTS = $(am_libcmph_la_OBJECTS)
|
|
||||||
libcmph_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
|
|
||||||
$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
|
|
||||||
$(libcmph_la_LDFLAGS) $(LDFLAGS) -o $@
|
|
||||||
binPROGRAMS_INSTALL = $(INSTALL_PROGRAM)
|
|
||||||
PROGRAMS = $(bin_PROGRAMS)
|
|
||||||
am_cmph_OBJECTS = main.$(OBJEXT) wingetopt.$(OBJEXT)
|
|
||||||
cmph_OBJECTS = $(am_cmph_OBJECTS)
|
|
||||||
cmph_DEPENDENCIES = libcmph.la
|
|
||||||
DEFAULT_INCLUDES = -I. -I$(top_builddir)@am__isrc@
|
|
||||||
depcomp = $(SHELL) $(top_srcdir)/depcomp
|
|
||||||
am__depfiles_maybe = depfiles
|
|
||||||
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
|
|
||||||
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
|
||||||
LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
|
|
||||||
--mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
|
|
||||||
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
|
||||||
CCLD = $(CC)
|
|
||||||
LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
|
|
||||||
--mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
|
|
||||||
$(LDFLAGS) -o $@
|
|
||||||
SOURCES = $(libcmph_la_SOURCES) $(cmph_SOURCES)
|
|
||||||
DIST_SOURCES = $(libcmph_la_SOURCES) $(cmph_SOURCES)
|
|
||||||
includeHEADERS_INSTALL = $(INSTALL_HEADER)
|
|
||||||
HEADERS = $(include_HEADERS)
|
|
||||||
ETAGS = etags
|
|
||||||
CTAGS = ctags
|
|
||||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
|
||||||
ACLOCAL = @ACLOCAL@
|
|
||||||
AMTAR = @AMTAR@
|
|
||||||
AR = @AR@
|
|
||||||
AUTOCONF = @AUTOCONF@
|
|
||||||
AUTOHEADER = @AUTOHEADER@
|
|
||||||
AUTOMAKE = @AUTOMAKE@
|
|
||||||
AWK = @AWK@
|
|
||||||
CC = @CC@
|
|
||||||
CCDEPMODE = @CCDEPMODE@
|
|
||||||
CFLAGS = @CFLAGS@
|
|
||||||
CPP = @CPP@
|
|
||||||
CPPFLAGS = @CPPFLAGS@
|
|
||||||
CYGPATH_W = @CYGPATH_W@
|
|
||||||
DEFS = @DEFS@
|
|
||||||
DEPDIR = @DEPDIR@
|
|
||||||
DSYMUTIL = @DSYMUTIL@
|
|
||||||
DUMPBIN = @DUMPBIN@
|
|
||||||
ECHO_C = @ECHO_C@
|
|
||||||
ECHO_N = @ECHO_N@
|
|
||||||
ECHO_T = @ECHO_T@
|
|
||||||
EGREP = @EGREP@
|
|
||||||
EXEEXT = @EXEEXT@
|
|
||||||
FGREP = @FGREP@
|
|
||||||
GETCONF = @GETCONF@
|
|
||||||
GREP = @GREP@
|
|
||||||
INSTALL = @INSTALL@
|
|
||||||
INSTALL_DATA = @INSTALL_DATA@
|
|
||||||
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
|
||||||
INSTALL_SCRIPT = @INSTALL_SCRIPT@
|
|
||||||
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
|
|
||||||
LD = @LD@
|
|
||||||
LDFLAGS = @LDFLAGS@
|
|
||||||
LIBM = @LIBM@
|
|
||||||
LIBOBJS = @LIBOBJS@
|
|
||||||
LIBS = @LIBS@
|
|
||||||
LIBTOOL = @LIBTOOL@
|
|
||||||
LIPO = @LIPO@
|
|
||||||
LN_S = @LN_S@
|
|
||||||
LTLIBOBJS = @LTLIBOBJS@
|
|
||||||
MAKEINFO = @MAKEINFO@
|
|
||||||
MKDIR_P = @MKDIR_P@
|
|
||||||
NM = @NM@
|
|
||||||
NMEDIT = @NMEDIT@
|
|
||||||
OBJEXT = @OBJEXT@
|
|
||||||
OTOOL = @OTOOL@
|
|
||||||
OTOOL64 = @OTOOL64@
|
|
||||||
PACKAGE = @PACKAGE@
|
|
||||||
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
|
|
||||||
PACKAGE_NAME = @PACKAGE_NAME@
|
|
||||||
PACKAGE_STRING = @PACKAGE_STRING@
|
|
||||||
PACKAGE_TARNAME = @PACKAGE_TARNAME@
|
|
||||||
PACKAGE_VERSION = @PACKAGE_VERSION@
|
|
||||||
PATH_SEPARATOR = @PATH_SEPARATOR@
|
|
||||||
RANLIB = @RANLIB@
|
|
||||||
SED = @SED@
|
|
||||||
SET_MAKE = @SET_MAKE@
|
|
||||||
SHELL = @SHELL@
|
|
||||||
STRIP = @STRIP@
|
|
||||||
VERSION = @VERSION@
|
|
||||||
abs_builddir = @abs_builddir@
|
|
||||||
abs_srcdir = @abs_srcdir@
|
|
||||||
abs_top_builddir = @abs_top_builddir@
|
|
||||||
abs_top_srcdir = @abs_top_srcdir@
|
|
||||||
ac_ct_CC = @ac_ct_CC@
|
|
||||||
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
|
|
||||||
am__include = @am__include@
|
|
||||||
am__leading_dot = @am__leading_dot@
|
|
||||||
am__quote = @am__quote@
|
|
||||||
am__tar = @am__tar@
|
|
||||||
am__untar = @am__untar@
|
|
||||||
bindir = @bindir@
|
|
||||||
build = @build@
|
|
||||||
build_alias = @build_alias@
|
|
||||||
build_cpu = @build_cpu@
|
|
||||||
build_os = @build_os@
|
|
||||||
build_vendor = @build_vendor@
|
|
||||||
builddir = @builddir@
|
|
||||||
datadir = @datadir@
|
|
||||||
datarootdir = @datarootdir@
|
|
||||||
docdir = @docdir@
|
|
||||||
dvidir = @dvidir@
|
|
||||||
exec_prefix = @exec_prefix@
|
|
||||||
host = @host@
|
|
||||||
host_alias = @host_alias@
|
|
||||||
host_cpu = @host_cpu@
|
|
||||||
host_os = @host_os@
|
|
||||||
host_vendor = @host_vendor@
|
|
||||||
htmldir = @htmldir@
|
|
||||||
includedir = @includedir@
|
|
||||||
infodir = @infodir@
|
|
||||||
install_sh = @install_sh@
|
|
||||||
libdir = @libdir@
|
|
||||||
libexecdir = @libexecdir@
|
|
||||||
localedir = @localedir@
|
|
||||||
localstatedir = @localstatedir@
|
|
||||||
lt_ECHO = @lt_ECHO@
|
|
||||||
mandir = @mandir@
|
|
||||||
mkdir_p = @mkdir_p@
|
|
||||||
oldincludedir = @oldincludedir@
|
|
||||||
pdfdir = @pdfdir@
|
|
||||||
prefix = @prefix@
|
|
||||||
program_transform_name = @program_transform_name@
|
|
||||||
psdir = @psdir@
|
|
||||||
sbindir = @sbindir@
|
|
||||||
sharedstatedir = @sharedstatedir@
|
|
||||||
srcdir = @srcdir@
|
|
||||||
sysconfdir = @sysconfdir@
|
|
||||||
target_alias = @target_alias@
|
|
||||||
top_builddir = @top_builddir@
|
|
||||||
top_srcdir = @top_srcdir@
|
|
||||||
lib_LTLIBRARIES = libcmph.la
|
|
||||||
include_HEADERS = cmph.h cmph_types.h cmph_time.h
|
|
||||||
libcmph_la_SOURCES = hash.h hash.c \
|
|
||||||
jenkins_hash.h jenkins_hash.c\
|
|
||||||
hash_state.h debug.h \
|
|
||||||
vstack.h vstack.c vqueue.h vqueue.c\
|
|
||||||
graph.h graph.c bitbool.h \
|
|
||||||
cmph.h cmph.c cmph_structs.h cmph_structs.c\
|
|
||||||
chm.h chm.c chm_structs.h \
|
|
||||||
bmz.h bmz.c bmz_structs.h \
|
|
||||||
bmz8.h bmz8.c bmz8_structs.h \
|
|
||||||
bdz.h bdz.c bdz_structs.h \
|
|
||||||
bdz_ph.h bdz_ph.c bdz_structs_ph.h \
|
|
||||||
brz.h brz.c brz_structs.h \
|
|
||||||
fch.h fch.c fch_structs.h \
|
|
||||||
fch_buckets.h fch_buckets.c \
|
|
||||||
chd.h chd.c chd_structs.h \
|
|
||||||
chd_ph.h chd_ph.c chd_structs_ph.h \
|
|
||||||
miller_rabin.h miller_rabin.c \
|
|
||||||
buffer_manager.h buffer_manager.c \
|
|
||||||
buffer_entry.h buffer_entry.c\
|
|
||||||
select.h select.c select_lookup_tables.h \
|
|
||||||
compressed_seq.h compressed_seq.c \
|
|
||||||
compressed_rank.h compressed_rank.c \
|
|
||||||
cmph_time.h
|
|
||||||
|
|
||||||
libcmph_la_LDFLAGS = -version-info 0:0:0
|
|
||||||
cmph_SOURCES = main.c wingetopt.h wingetopt.c
|
|
||||||
cmph_LDADD = libcmph.la
|
|
||||||
all: all-am
|
|
||||||
|
|
||||||
.SUFFIXES:
|
|
||||||
.SUFFIXES: .c .lo .o .obj
|
|
||||||
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
|
|
||||||
@for dep in $?; do \
|
|
||||||
case '$(am__configure_deps)' in \
|
|
||||||
*$$dep*) \
|
|
||||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
|
|
||||||
&& exit 0; \
|
|
||||||
exit 1;; \
|
|
||||||
esac; \
|
|
||||||
done; \
|
|
||||||
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/Makefile'; \
|
|
||||||
cd $(top_srcdir) && \
|
|
||||||
$(AUTOMAKE) --gnu src/Makefile
|
|
||||||
.PRECIOUS: Makefile
|
|
||||||
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
|
||||||
@case '$?' in \
|
|
||||||
*config.status*) \
|
|
||||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
|
|
||||||
*) \
|
|
||||||
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
|
|
||||||
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
|
|
||||||
esac;
|
|
||||||
|
|
||||||
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
|
||||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
|
||||||
|
|
||||||
$(top_srcdir)/configure: $(am__configure_deps)
|
|
||||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
|
||||||
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
|
|
||||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
|
||||||
install-libLTLIBRARIES: $(lib_LTLIBRARIES)
|
|
||||||
@$(NORMAL_INSTALL)
|
|
||||||
test -z "$(libdir)" || $(MKDIR_P) "$(DESTDIR)$(libdir)"
|
|
||||||
@list='$(lib_LTLIBRARIES)'; for p in $$list; do \
|
|
||||||
if test -f $$p; then \
|
|
||||||
f=$(am__strip_dir) \
|
|
||||||
echo " $(LIBTOOL) --mode=install $(libLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) '$$p' '$(DESTDIR)$(libdir)/$$f'"; \
|
|
||||||
$(LIBTOOL) --mode=install $(libLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) "$$p" "$(DESTDIR)$(libdir)/$$f"; \
|
|
||||||
else :; fi; \
|
|
||||||
done
|
|
||||||
|
|
||||||
uninstall-libLTLIBRARIES:
|
|
||||||
@$(NORMAL_UNINSTALL)
|
|
||||||
@list='$(lib_LTLIBRARIES)'; for p in $$list; do \
|
|
||||||
p=$(am__strip_dir) \
|
|
||||||
echo " $(LIBTOOL) --mode=uninstall rm -f '$(DESTDIR)$(libdir)/$$p'"; \
|
|
||||||
$(LIBTOOL) --mode=uninstall rm -f "$(DESTDIR)$(libdir)/$$p"; \
|
|
||||||
done
|
|
||||||
|
|
||||||
clean-libLTLIBRARIES:
|
|
||||||
-test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES)
|
|
||||||
@list='$(lib_LTLIBRARIES)'; for p in $$list; do \
|
|
||||||
dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
|
|
||||||
test "$$dir" != "$$p" || dir=.; \
|
|
||||||
echo "rm -f \"$${dir}/so_locations\""; \
|
|
||||||
rm -f "$${dir}/so_locations"; \
|
|
||||||
done
|
|
||||||
libcmph.la: $(libcmph_la_OBJECTS) $(libcmph_la_DEPENDENCIES)
|
|
||||||
$(libcmph_la_LINK) -rpath $(libdir) $(libcmph_la_OBJECTS) $(libcmph_la_LIBADD) $(LIBS)
|
|
||||||
install-binPROGRAMS: $(bin_PROGRAMS)
|
|
||||||
@$(NORMAL_INSTALL)
|
|
||||||
test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)"
|
|
||||||
@list='$(bin_PROGRAMS)'; for p in $$list; do \
|
|
||||||
p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \
|
|
||||||
if test -f $$p \
|
|
||||||
|| test -f $$p1 \
|
|
||||||
; then \
|
|
||||||
f=`echo "$$p1" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \
|
|
||||||
echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(binPROGRAMS_INSTALL) '$$p' '$(DESTDIR)$(bindir)/$$f'"; \
|
|
||||||
$(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(binPROGRAMS_INSTALL) "$$p" "$(DESTDIR)$(bindir)/$$f" || exit 1; \
|
|
||||||
else :; fi; \
|
|
||||||
done
|
|
||||||
|
|
||||||
uninstall-binPROGRAMS:
|
|
||||||
@$(NORMAL_UNINSTALL)
|
|
||||||
@list='$(bin_PROGRAMS)'; for p in $$list; do \
|
|
||||||
f=`echo "$$p" | sed 's,^.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \
|
|
||||||
echo " rm -f '$(DESTDIR)$(bindir)/$$f'"; \
|
|
||||||
rm -f "$(DESTDIR)$(bindir)/$$f"; \
|
|
||||||
done
|
|
||||||
|
|
||||||
clean-binPROGRAMS:
|
|
||||||
@list='$(bin_PROGRAMS)'; for p in $$list; do \
|
|
||||||
f=`echo $$p|sed 's/$(EXEEXT)$$//'`; \
|
|
||||||
echo " rm -f $$p $$f"; \
|
|
||||||
rm -f $$p $$f ; \
|
|
||||||
done
|
|
||||||
cmph$(EXEEXT): $(cmph_OBJECTS) $(cmph_DEPENDENCIES)
|
|
||||||
@rm -f cmph$(EXEEXT)
|
|
||||||
$(LINK) $(cmph_OBJECTS) $(cmph_LDADD) $(LIBS)
|
|
||||||
|
|
||||||
mostlyclean-compile:
|
|
||||||
-rm -f *.$(OBJEXT)
|
|
||||||
|
|
||||||
distclean-compile:
|
|
||||||
-rm -f *.tab.c
|
|
||||||
|
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bdz.Plo@am__quote@
|
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bdz_ph.Plo@am__quote@
|
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bmz.Plo@am__quote@
|
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bmz8.Plo@am__quote@
|
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/brz.Plo@am__quote@
|
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/buffer_entry.Plo@am__quote@
|
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/buffer_manager.Plo@am__quote@
|
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/chd.Plo@am__quote@
|
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/chd_ph.Plo@am__quote@
|
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/chm.Plo@am__quote@
|
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cmph.Plo@am__quote@
|
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cmph_structs.Plo@am__quote@
|
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/compressed_rank.Plo@am__quote@
|
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/compressed_seq.Plo@am__quote@
|
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fch.Plo@am__quote@
|
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fch_buckets.Plo@am__quote@
|
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/graph.Plo@am__quote@
|
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/hash.Plo@am__quote@
|
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jenkins_hash.Plo@am__quote@
|
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/main.Po@am__quote@
|
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/miller_rabin.Plo@am__quote@
|
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/select.Plo@am__quote@
|
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/vqueue.Plo@am__quote@
|
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/vstack.Plo@am__quote@
|
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wingetopt.Po@am__quote@
|
|
||||||
|
|
||||||
.c.o:
|
|
||||||
@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
|
|
||||||
@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
|
|
||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
|
|
||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
|
||||||
@am__fastdepCC_FALSE@ $(COMPILE) -c $<
|
|
||||||
|
|
||||||
.c.obj:
|
|
||||||
@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
|
|
||||||
@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
|
|
||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
|
|
||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
|
||||||
@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
|
|
||||||
|
|
||||||
.c.lo:
|
|
||||||
@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
|
|
||||||
@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
|
|
||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
|
|
||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
|
||||||
@am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $<
|
|
||||||
|
|
||||||
mostlyclean-libtool:
|
|
||||||
-rm -f *.lo
|
|
||||||
|
|
||||||
clean-libtool:
|
|
||||||
-rm -rf .libs _libs
|
|
||||||
install-includeHEADERS: $(include_HEADERS)
|
|
||||||
@$(NORMAL_INSTALL)
|
|
||||||
test -z "$(includedir)" || $(MKDIR_P) "$(DESTDIR)$(includedir)"
|
|
||||||
@list='$(include_HEADERS)'; for p in $$list; do \
|
|
||||||
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
|
|
||||||
f=$(am__strip_dir) \
|
|
||||||
echo " $(includeHEADERS_INSTALL) '$$d$$p' '$(DESTDIR)$(includedir)/$$f'"; \
|
|
||||||
$(includeHEADERS_INSTALL) "$$d$$p" "$(DESTDIR)$(includedir)/$$f"; \
|
|
||||||
done
|
|
||||||
|
|
||||||
uninstall-includeHEADERS:
|
|
||||||
@$(NORMAL_UNINSTALL)
|
|
||||||
@list='$(include_HEADERS)'; for p in $$list; do \
|
|
||||||
f=$(am__strip_dir) \
|
|
||||||
echo " rm -f '$(DESTDIR)$(includedir)/$$f'"; \
|
|
||||||
rm -f "$(DESTDIR)$(includedir)/$$f"; \
|
|
||||||
done
|
|
||||||
|
|
||||||
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
|
|
||||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
|
||||||
unique=`for i in $$list; do \
|
|
||||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
|
||||||
done | \
|
|
||||||
$(AWK) ' { files[$$0] = 1; } \
|
|
||||||
END { for (i in files) print i; }'`; \
|
|
||||||
mkid -fID $$unique
|
|
||||||
tags: TAGS
|
|
||||||
|
|
||||||
TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
|
||||||
$(TAGS_FILES) $(LISP)
|
|
||||||
tags=; \
|
|
||||||
here=`pwd`; \
|
|
||||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
|
||||||
unique=`for i in $$list; do \
|
|
||||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
|
||||||
done | \
|
|
||||||
$(AWK) ' { files[$$0] = 1; } \
|
|
||||||
END { for (i in files) print i; }'`; \
|
|
||||||
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
|
|
||||||
test -n "$$unique" || unique=$$empty_fix; \
|
|
||||||
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
|
||||||
$$tags $$unique; \
|
|
||||||
fi
|
|
||||||
ctags: CTAGS
|
|
||||||
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
|
||||||
$(TAGS_FILES) $(LISP)
|
|
||||||
tags=; \
|
|
||||||
here=`pwd`; \
|
|
||||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
|
||||||
unique=`for i in $$list; do \
|
|
||||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
|
||||||
done | \
|
|
||||||
$(AWK) ' { files[$$0] = 1; } \
|
|
||||||
END { for (i in files) print i; }'`; \
|
|
||||||
test -z "$(CTAGS_ARGS)$$tags$$unique" \
|
|
||||||
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
|
|
||||||
$$tags $$unique
|
|
||||||
|
|
||||||
GTAGS:
|
|
||||||
here=`$(am__cd) $(top_builddir) && pwd` \
|
|
||||||
&& cd $(top_srcdir) \
|
|
||||||
&& gtags -i $(GTAGS_ARGS) $$here
|
|
||||||
|
|
||||||
distclean-tags:
|
|
||||||
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
|
||||||
|
|
||||||
distdir: $(DISTFILES)
|
|
||||||
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
|
||||||
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
|
||||||
list='$(DISTFILES)'; \
|
|
||||||
dist_files=`for file in $$list; do echo $$file; done | \
|
|
||||||
sed -e "s|^$$srcdirstrip/||;t" \
|
|
||||||
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
|
|
||||||
case $$dist_files in \
|
|
||||||
*/*) $(MKDIR_P) `echo "$$dist_files" | \
|
|
||||||
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
|
|
||||||
sort -u` ;; \
|
|
||||||
esac; \
|
|
||||||
for file in $$dist_files; do \
|
|
||||||
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
|
|
||||||
if test -d $$d/$$file; then \
|
|
||||||
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
|
|
||||||
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
|
|
||||||
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
|
|
||||||
fi; \
|
|
||||||
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
|
|
||||||
else \
|
|
||||||
test -f $(distdir)/$$file \
|
|
||||||
|| cp -p $$d/$$file $(distdir)/$$file \
|
|
||||||
|| exit 1; \
|
|
||||||
fi; \
|
|
||||||
done
|
|
||||||
check-am: all-am
|
|
||||||
check: check-am
|
|
||||||
all-am: Makefile $(LTLIBRARIES) $(PROGRAMS) $(HEADERS)
|
|
||||||
install-binPROGRAMS: install-libLTLIBRARIES
|
|
||||||
|
|
||||||
installdirs:
|
|
||||||
for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(bindir)" "$(DESTDIR)$(includedir)"; do \
|
|
||||||
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
|
|
||||||
done
|
|
||||||
install: install-am
|
|
||||||
install-exec: install-exec-am
|
|
||||||
install-data: install-data-am
|
|
||||||
uninstall: uninstall-am
|
|
||||||
|
|
||||||
install-am: all-am
|
|
||||||
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
|
|
||||||
|
|
||||||
installcheck: installcheck-am
|
|
||||||
install-strip:
|
|
||||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
|
||||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
|
||||||
`test -z '$(STRIP)' || \
|
|
||||||
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
|
|
||||||
mostlyclean-generic:
|
|
||||||
|
|
||||||
clean-generic:
|
|
||||||
|
|
||||||
distclean-generic:
|
|
||||||
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
|
|
||||||
|
|
||||||
maintainer-clean-generic:
|
|
||||||
@echo "This command is intended for maintainers to use"
|
|
||||||
@echo "it deletes files that may require special tools to rebuild."
|
|
||||||
clean: clean-am
|
|
||||||
|
|
||||||
clean-am: clean-binPROGRAMS clean-generic clean-libLTLIBRARIES \
|
|
||||||
clean-libtool mostlyclean-am
|
|
||||||
|
|
||||||
distclean: distclean-am
|
|
||||||
-rm -rf ./$(DEPDIR)
|
|
||||||
-rm -f Makefile
|
|
||||||
distclean-am: clean-am distclean-compile distclean-generic \
|
|
||||||
distclean-tags
|
|
||||||
|
|
||||||
dvi: dvi-am
|
|
||||||
|
|
||||||
dvi-am:
|
|
||||||
|
|
||||||
html: html-am
|
|
||||||
|
|
||||||
info: info-am
|
|
||||||
|
|
||||||
info-am:
|
|
||||||
|
|
||||||
install-data-am: install-includeHEADERS
|
|
||||||
|
|
||||||
install-dvi: install-dvi-am
|
|
||||||
|
|
||||||
install-exec-am: install-binPROGRAMS install-libLTLIBRARIES
|
|
||||||
|
|
||||||
install-html: install-html-am
|
|
||||||
|
|
||||||
install-info: install-info-am
|
|
||||||
|
|
||||||
install-man:
|
|
||||||
|
|
||||||
install-pdf: install-pdf-am
|
|
||||||
|
|
||||||
install-ps: install-ps-am
|
|
||||||
|
|
||||||
installcheck-am:
|
|
||||||
|
|
||||||
maintainer-clean: maintainer-clean-am
|
|
||||||
-rm -rf ./$(DEPDIR)
|
|
||||||
-rm -f Makefile
|
|
||||||
maintainer-clean-am: distclean-am maintainer-clean-generic
|
|
||||||
|
|
||||||
mostlyclean: mostlyclean-am
|
|
||||||
|
|
||||||
mostlyclean-am: mostlyclean-compile mostlyclean-generic \
|
|
||||||
mostlyclean-libtool
|
|
||||||
|
|
||||||
pdf: pdf-am
|
|
||||||
|
|
||||||
pdf-am:
|
|
||||||
|
|
||||||
ps: ps-am
|
|
||||||
|
|
||||||
ps-am:
|
|
||||||
|
|
||||||
uninstall-am: uninstall-binPROGRAMS uninstall-includeHEADERS \
|
|
||||||
uninstall-libLTLIBRARIES
|
|
||||||
|
|
||||||
.MAKE: install-am install-strip
|
|
||||||
|
|
||||||
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
|
|
||||||
clean-generic clean-libLTLIBRARIES clean-libtool ctags \
|
|
||||||
distclean distclean-compile distclean-generic \
|
|
||||||
distclean-libtool distclean-tags distdir dvi dvi-am html \
|
|
||||||
html-am info info-am install install-am install-binPROGRAMS \
|
|
||||||
install-data install-data-am install-dvi install-dvi-am \
|
|
||||||
install-exec install-exec-am install-html install-html-am \
|
|
||||||
install-includeHEADERS install-info install-info-am \
|
|
||||||
install-libLTLIBRARIES install-man install-pdf install-pdf-am \
|
|
||||||
install-ps install-ps-am install-strip installcheck \
|
|
||||||
installcheck-am installdirs maintainer-clean \
|
|
||||||
maintainer-clean-generic mostlyclean mostlyclean-compile \
|
|
||||||
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
|
|
||||||
tags uninstall uninstall-am uninstall-binPROGRAMS \
|
|
||||||
uninstall-includeHEADERS uninstall-libLTLIBRARIES
|
|
||||||
|
|
||||||
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
|
||||||
# Otherwise a system limit (for SysV at least) may be exceeded.
|
|
||||||
.NOEXPORT:
|
|
@ -63,6 +63,7 @@ void chd_config_set_keys_per_bin(cmph_config_t *mph, cmph_uint32 keys_per_bin)
|
|||||||
|
|
||||||
cmph_t *chd_new(cmph_config_t *mph, double c)
|
cmph_t *chd_new(cmph_config_t *mph, double c)
|
||||||
{
|
{
|
||||||
|
DEBUGP("Creating new chd");
|
||||||
cmph_t *mphf = NULL;
|
cmph_t *mphf = NULL;
|
||||||
chd_data_t *chdf = NULL;
|
chd_data_t *chdf = NULL;
|
||||||
chd_config_data_t *chd = (chd_config_data_t *)mph->data;
|
chd_config_data_t *chd = (chd_config_data_t *)mph->data;
|
||||||
@ -203,7 +204,7 @@ int chd_dump(cmph_t *mphf, FILE *fd)
|
|||||||
nbytes = fwrite(&data->packed_chd_phf_size, sizeof(cmph_uint32), (size_t)1, fd);
|
nbytes = fwrite(&data->packed_chd_phf_size, sizeof(cmph_uint32), (size_t)1, fd);
|
||||||
nbytes = fwrite(data->packed_chd_phf, data->packed_chd_phf_size, (size_t)1, fd);
|
nbytes = fwrite(data->packed_chd_phf, data->packed_chd_phf_size, (size_t)1, fd);
|
||||||
|
|
||||||
DEBUGP("Dumping compressed rank structure with %u bytes to disk\n", buflen);
|
DEBUGP("Dumping compressed rank structure with %u bytes to disk\n", 1);
|
||||||
nbytes = fwrite(&data->packed_cr_size, sizeof(cmph_uint32), (size_t)1, fd);
|
nbytes = fwrite(&data->packed_cr_size, sizeof(cmph_uint32), (size_t)1, fd);
|
||||||
nbytes = fwrite(data->packed_cr, data->packed_cr_size, (size_t)1, fd);
|
nbytes = fwrite(data->packed_cr, data->packed_cr_size, (size_t)1, fd);
|
||||||
|
|
||||||
|
@ -625,7 +625,7 @@ cmph_t *chd_ph_new(cmph_config_t *mph, double c)
|
|||||||
chd_ph_data_t *chd_phf = NULL;
|
chd_ph_data_t *chd_phf = NULL;
|
||||||
chd_ph_config_data_t *chd_ph = (chd_ph_config_data_t *)mph->data;
|
chd_ph_config_data_t *chd_ph = (chd_ph_config_data_t *)mph->data;
|
||||||
|
|
||||||
register double load_factor = c;
|
register double load_factor = 0.6;
|
||||||
register cmph_uint8 searching_success = 0;
|
register cmph_uint8 searching_success = 0;
|
||||||
register cmph_uint32 max_probes = 1 << 20; // default value for max_probes
|
register cmph_uint32 max_probes = 1 << 20; // default value for max_probes
|
||||||
register cmph_uint32 iterations = 100;
|
register cmph_uint32 iterations = 100;
|
||||||
@ -641,6 +641,7 @@ cmph_t *chd_ph_new(cmph_config_t *mph, double c)
|
|||||||
double construction_time = 0.0;
|
double construction_time = 0.0;
|
||||||
ELAPSED_TIME_IN_SECONDS(&construction_time_begin);
|
ELAPSED_TIME_IN_SECONDS(&construction_time_begin);
|
||||||
#endif
|
#endif
|
||||||
|
c = load_factor;
|
||||||
|
|
||||||
|
|
||||||
chd_ph->m = mph->key_source->nkeys;
|
chd_ph->m = mph->key_source->nkeys;
|
||||||
|
Loading…
Reference in New Issue
Block a user