Cmake, gmake, make 등의 차이점

cmake, gmake, make 등의 차이점이 궁금합니다.
아마록은 cmake로 하고 대부분은 make로 하던데 뭐가 차이인가요?

젠투에서는 gmake를 한다고들 하고… 뭐가 어떻게 다르고 종류가 무엇이 잇나요??

make 는 범용적인 컴파일 명령어 이고요
gmake는 리눅스에서 make 와 같고요 gmake=make
cmake는 input 파일들을 자동 생성 하며 컴파일 하는 머 autotool 컴파일 방식이죠 (언제부터인가 kde 쪽에서 사용을…)

참고
make = http://en.wikipedia.org/wiki/Make_(software)
cmake = http://en.wikipedia.org/wiki/Cmake , http://techbase.kde.org/Development/Tutorials/CMake_(ko)

리눅스에서는 gmake나 make가 차이가 없습니다. BSD 계열에서는 BSD 자체 make가 따로 있기 때문에 GNU make는 gmake라는 이름으로 들어갔습니다.

리눅스도 배포판에 따라서는 gmake가 존재하기도 합니다만 강분도님 말처럼 gmake = make죠.

cmake는 make file을 생성해주는 툴 중 하나입니다. 예전에 x-windows 같은 경우 imake나 xmkmf 같은 명령어가 있었고, GNU 툴들이 autotools로 autoconf나 automake 같은 명령을 제공합니다. cmake는 이런 툴들의 단점을 개선하고 cross-platform으로 쓸 수 있게 하는 것을 목표로 합니다.

몇몇 큰 프로젝트가 cmake를 채택하고 있는데 (예를 들어 dcmtk) 얼마 전에 kde가 공식적으로 cmake로 완전히 전환을 했습니다.