Skip to content
  • Thomas Haller's avatar
    include: use double-quotes to include our own headers · 831286df
    Thomas Haller authored
    In practice, this should only matter when there are multiple
    header files with the same name. That is something we try
    to avoid already, by giving headers a distinct name.
    
    When building NetworkManager itself, we clearly want to use
    double-quotes for including our own headers.
    But we also want to do that in our public headers. For example:
    
      ./a.c
        #include <stdio.h>
        #include <nm-1.h>
        void main() {
            printf ("INCLUDED %s/nm-2.h\n", SYMB);
        }
    
      ./1/nm-1.h
        #include <nm-2.h>
    
      ./1/nm-2.h
        #define SYMB "1"
    
      ./2/nm-2.h
        #define SYMB "2"
    
    $ cc -I./2 -I./1 ./a.c
    $ ./a.out
    INCLUDED 2/nm-2.h
    
    Exceptions to this are
      - headers in "shared/nm-utils" that include <NetworkManager.h>. These
        headers are copied into projects and hence used like headers owned by
        those projects.
      - examples/C
    831286df