Hello matthias:
Your understanding is partially correct, but let me add more info:
-> Your statement is true, when selecting startup in library mode, the CMSIS startup source code (system_<device>.c) takes the macros from a default header file system_<device>.h installed with KSDK (e.g. in "...\KSDK_1.2.0\platform\devices\<device>\startup"). So you have 2 options:
1) Use the default header but add the macro #define CLOCK_SETUP (0/1/...) so the CMSIS startup code knows which configuration to apply.
2) Generate code with PE and make sure the startup library project uses the generated header file system_<device>.h inside of "Generated_Code -> SDK -> platform -> devices -> MK64F12 -> startup" instead of the default header from KSDK installation. For this you can edit the compiler search paths.
Honestly I see no reason to select startup library mode, since Processor Expert can take care of the init code and you avoid these issues.
-> Even if selecting startup library mode your PE clock settings are not useless. You can still use those with the clock_manager APIs (CLOCK_SYS_Init(), CLOCK_SYS_SetConfiguration(), CLOCK_SYS_UpdateConfiguration(), etc).
I hope this helps to clarify.
Regards!
Jorge Gonzalez