move soci buiding code to soci.cmake