55 uint64_t
hash = 14695981039346656037ULL;
57 hash ^= ((uint64_t)(c));
58 hash *= 1099511628211ULL;
82 std::vector<std::string> objects_list) = 0;
106 std::string packer) = 0;
124 virtual void set_target_meta(std::vector<std::string> cargs, std::vector<std::string> largs,
125 std::string out, std::string compiler, std::string linker,
126 std::string packer) = 0;
virtual lib::map< std::string, std::string > get_files_for_recompilation(std::vector< std::string > file_list, std::vector< std::string > objects_list)=0
Pass a list of source files and coresponding object files and get a map of source-object that need to...
Hash(std::string target_id)
virtual int compare_and_set_cargs(std::vector< std::string > cargs)=0
Compare compile args and update metadata.
virtual int compare_and_set_largs(std::vector< std::string > largs)=0
Compare link args and update metadata.
virtual int compare_and_set_output_file(std::string out)=0
Compare output file name and update metadata.
virtual void set_target_meta(std::vector< std::string > cargs, std::vector< std::string > largs, std::string out, std::string compiler, std::string linker, std::string packer)=0
Set the target meta.
virtual int compare_and_set_commands(std::string compiler, std::string linker, std::string packer)=0
Compare shell commands used for compilation and update metadata.
Simple map implementation with some stack operation added.
Custom implementation of map datatype.
Filebuffer for CBuild ecosystem.
uint64_t hash(std::string str)
FNV-1a hashing function for std::string.
uint64_t hash_fnv_1a(std::string str)
FNV-1a hashing function for std::string.
uint64_t hash_djb2(std::string str)
djb2 hashing function for std::string