Most basic features are common between various versions of make. Some of the advanced functions differ. When porting an application from Solaris to Linux, it is likely that there will be a need to modify the makefiles.
The help information on GNU Make (access this using the command "info make")on your Linux host, includes sections on Features and Missing, that provide a detailed list of features unique to GNU make and features not supported in GNU make.
To make sure that the same makefile can be used with Linux and Solaris it is a good idea to follow one of the following methods:
- When making changes to makefile only use features common between both versions of make. This can be verified by testing the makefile on both platforms after the porting changes. This will make porting the makefile to additional platforms simpler.
- Switch to the GNU Make on both platforms.
Of course you will have to not only test the makefile on both platforms, but build and test the binaries on both platforms to make certain that the new makefile works!
This was first published in February 2005