tree 67708d7736537b659bb002a15285ac1b48de16dc
parent b3848a3192f349023ef209b943519f7812e3faca
author Aldrin Piri <aldrin@apache.org> 1468512814 -0700
committer Aldrin Piri <aldrin@apache.org> 1470229659 -0400
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIcBAABCgAGBQJXoe6mAAoJEFMa66pM/l0ALFsP/1UnTVSWSA4VRPhodHjjRolk
 tz+9j27yeTsdrxRR4Z+FvgrG1nSYCgj392Hn/LOaiyM5jEquZ60Pn0eqki8sHR4/
 /Z2G4hKDT5MSqJW9Vx1cOjFabXiwdxvNMMcKEYVbmI2auUQlkuFj82a2Yoql9Sug
 9/JW/MrRpM/Ap+s7FJ3+Xv3cXAQbJjPWpDy51eErekJ1C6bb/7LPp6T/3XeCMOH/
 5sg7thd6NTsaJWFDt8bO5fFWNT18UM0j2oPXJUlfhS05sOiw3p70UzUnUpUVf8/J
 pjzCK+/YW8L3FOIYYQ1rHmQVeOj12Srok2zAT6hN3ghaVGKv+1ta4wZ3i79wDcpD
 qlu/dSVdBB4cZrNR9uAt/DktHlz7KkjQxgug//Ahm+lM4BsG5RBUqxURYba3vXuI
 6zhB6sSQNegayHdOjT8HcdiZaXfB7TO08gnoOBYE8oqLyc6f+ZltIji2lSpMsIel
 tUtZCBV7D7htj9v/nmaEJ0TEtdN0obty6mKATqlPito1EnfqFmXDrbcdLBi2KyTE
 2kZHZlGyex6f6oFu2CopXa/8Yxlx//RxwR9FEYF6owv6lJlbht2/BKpGOQpaRxH5
 hRPOMD8OTNuzMtntaOF8wsB4gAGGFfKs1HFaybg3ImZ7xWyWDt9QzBTBT5v9Nxco
 gx9WtfswAnQepCSulA94
 =tIxu
 -----END PGP SIGNATURE-----

MINIFI-68 Adding yaml-cpp source and updating LICENSE to reflect its inclusion.

Adding a Makefile for yaml-cpp and incorporating its library build as part of the overall process.

Providing parsing of config.yml to establish a processing graph as well as providing configuration for FlowController to handle XML and YAML.

Ignoring SIGPIPE signal.

Adjusting Makefile to correct assembly packages not being generated.

Providing includes for yaml-cpp build Makefile and having top level Makefile build libuuid regardless.

Removing generated tst_uuid binary from uuid thirdprty dependency.

Adding Google Test LICENSE information as it is bundled with yaml-cpp
