change Specification macro to all upper-case
use cmake to build