yes cmake does not do such a good job as autoconf/libtool when it comes to shared/static library management. it is really up to you to whatever you want to support. 
the $(if use ...) is weird. if you want the cmake exclusive behaviour, why not something like $(cmake-utils_use !static-libs BUILD_SHARED)