Fix CMAKE_CXX_FLAGS
- Appending produces a semicolon if CMAKE_CXX_FLAGS is not empty
- Drop support for GCC earlier than 4.7