Next: Portable C and C++, Previous: Portable Shell, Up: Portable programming [Contents][Index]
You may add your own rules and variable definitions to a Makefile.am file. See Format of Makefile.am. Using portable makefile and shell constructs will increase the portability of your project.
Writing portable makefiles is an art. Since a makefile’s commands are
executed by the shell, you must consider the shell portability issues
already mentioned. However, other issues are specific to make
itself.
• $< in Ordinary Make Rules | $< in ordinary rules | |
• Failure in Make Rules | Failing portably in rules | |
• Special Chars in Names | Special Characters in Macro Names | |
• Backslash-Newline-Empty | Empty lines after backslash-newline | |
• Backslash-Newline Comments | Spanning comments across line boundaries | |
• Long Lines in Makefiles | Line length limitations | |
• Macros and Submakes | make macro=value and submakes
| |
• The Make Macro MAKEFLAGS | $(MAKEFLAGS) portability issues
| |
• The Make Macro SHELL | $(SHELL) portability issues
| |
• Parallel Make | Parallel make quirks
| |
• Comments in Make Rules | Other problems with Make comments | |
• Newlines in Make Rules | Using literal newlines in rules | |
• Comments in Make Macros | Other problems with Make comments in macros | |
• Trailing whitespace in Make Macros | Macro substitution problems | |
• Command-line Macros and whitespace | Whitespace trimming of values | |
• obj/ and Make | Don’t name a subdirectory obj | |
• make -k Status | Exit status of ‘make -k’ | |
• VPATH and Make | VPATH woes
| |
• Single Suffix Rules | Single suffix rules and separated dependencies | |
• Timestamps and Make | Subsecond timestamp resolution |
Next: Portable C and C++, Previous: Portable Shell, Up: Portable programming [Contents][Index]