True, but make as such is not the problem but rather the difficulty of writing a makefile. ExtUtils::MakeMaker takes "care" of that. In most cases it simply works although there will be few people who will totally understand what is happening and it is a pain to do anything that is even a little outside of the standard practices. makepp being a drop-in replacement for make suffers from the same problems.
Module::Build was started to do away with the dependence on the esoteric makefiles, but it did not fully deliver up on its promises and it just became another black box system to install Perl modules.
A program should be light and agile, its subroutines connected like a string of pearls. The spirit and intent of the program should be retained throughout. There should be neither too little or too much, neither needless loops nor useless variables, neither lack of structure nor overwhelming rigidity." - The Tao of Programming, 4.1 - Geoffrey James