any good tool for makefile generation?

56,485

Solution 1

Other suggestions you may want to consider:

  • Scons is a cross-platform, cross-compiler build library, uses Python scripting for the build systems. Used in a variety of large projects, and performs very well.

  • If you're using Qt, QMake is a nice build system too.

  • CMake is also pretty sweet.

  • Finally, if all else fails...

Solution 2

Try Automatic Makefile Generator.

It has support for the following compilers:

  • Borland 3.1
  • Borland 5.0
  • Borland 5.0, 16 bit
  • Borland 5.5
  • Borland 5.6
  • Borland 5.8
  • CC
  • GNU g++
  • GNU g++, dynamic library
  • Intel 5, 6, 7 for Linux
  • Intel 5, 6, 7 for Linux, dynamic library
  • Intel 5, 6, 7 for Windows
  • Intel 8,9,10 for Linux
  • Intel 8,9,10 for Linux, dynamic library
  • Intel 8,9 for Windows
  • Intel 10 for Windows
  • Visual C++ 5
  • Visual C++ 6, 7, 7.1
  • Visual C++ 8
  • Open Watcom
  • Watcom 10A
  • Watcom 10A, 16 bit

Solution 3

I've used Bakefile before with some success. It's fairly simple and seems to work well.

Solution 4

I would vote for OMake. It fixes all complains I had with GNU make:

  • it's a full-blown language.
  • uses MD5 instead of timestamps.
  • provides a minimal shell which implements the most useful Unix commands on all platforms: find, sed, AWK, etc.
  • works with either Unix or DOS style pathnames.
  • extensively documented.
  • supports parallel builds.
  • fast.

Solution 5

CMake is the only tool which can actually generate real Visual Studio projects (i.e., not "Makefile"-projects which call out to an external tool), and which automatically recreates the projects when the build input file (CMakeLists.txt) changes.

SCons performance issues are well-known and a thoroughly debated topic on the SCons mailing lists.

Share:
56,485
Serge
Author by

Serge

C/C++ developer

Updated on July 09, 2022

Comments

  • Serge
    Serge almost 2 years

    I'm looking for a tool which can generate makefile for a C/C++ project for different compilers (gcc, microsoft vc++, borland etc) and different platforms (Win, Linux, Mac).

  • kirbyfan64sos
    kirbyfan64sos over 9 years
    Yet another dead SO link! I manually went to your GitHub page, and what I see there as CodeMate is a Fortran-only build something. Did you create another project with the same name? This looks like it might be what you meant.