Search code examples
linuxbashmakefilegnu-makegnu

Why does make use a back quote and single quote around the target name?


I found in all make warning / error messages, it uses a single back quote but then a single quote to highlight the user input.

For example, the error message of the undefined makefile name is like

Makefile `xxx' was not found.

At first I thought it was a typo, but it seems to me it is intended for all messages.

https://www.gnu.org/software/make/manual/html_node/Error-Messages.html

It is distinct from the modern development to use both single / double quote around the highlight text, e.g. Makefile 'xxx' was not found.

Does anyone know the reason behind it?


Solution

  • I would guess it is a holdover from when fonts were displayed differently. For computer text that was intended to be read by humans, it used to be that (on many systems) using backquote/quote would produce output that resembles the way that English was normally typeset.

    Consider for example: https://data.historicaltexts.jisc.ac.uk/view?pubId=bl-001973110&pageId=bl-001973110-660536-22 :

    enter image description here

    For other information, see for example: